精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

跨平臺開發:初探PhoneGap移動開發框架

移動開發 Android
PhoneGap是一款開源的手機應用開發平臺,它僅僅只用HTML和JavaScript語言就可以制作出能在多個移動設備上運行的應用。

隨著Google的Android手機和蘋果的iPhone手機的逐漸普及,越來越多開發者加入到移動應用開發的大軍當中。目前移動終端中的冠亞軍Android,應用是基于Java語言基礎上進行開發的;而蘋果公司的iPhone則是基于C語言開發的。如果開發者編寫的應用需要同時在不同的移動設備上運行的話,則必須要掌握多種開發語言,這已經成為開發團隊的一大難題,在51CTO專訪國內著名移動軟件尚郵的首席架構師時也提到過跨平臺軟件開發的困難。而為了進一步簡化移動應用的編程,很多公司推出解決方案,Adobe推出的“AIR for Android”,使Flash為Android開發本地應用成為可能。而Nitobi公司推也出了一套開源的移動應用解決方案PhoneGap

51CTO移動開發推薦PhoneGap專題

PhoneGap是一款開源的手機應用開發平臺,它僅僅只用HTML和JavaScript語言就可以制作出能在多個移動設備上運行的應用。PhoneGap將移動設備本身提供的復雜的API進行了抽象和簡化,提供了一系列豐富的API供開發者調用,只要你會HTML和Javascript或者Java語言,就可以利用PhoneGap提供的API去調用各種功能,PhoneGap就能讓你可以制作出在各種手機平臺上運行的應用,這對移動應用開發者來說無疑是個福音。 目前,PhoneGap已實現對iPhone/ipad、Android、Symbian,Palm、黑莓各版本絕大部分功能的支持,其中官方文檔中對其支持的詳細說明如下圖所示:

在本文中,將以一個簡單的能在Android平臺上運行的HelloWorld的示例,講解如何安裝PhoneGap的開發框架并配合Eclipse進行開發的過程。

基于Android SDK安裝PhoneGap框架

首先,要明白一點,就是要利用PhoneGap框架開發移動應用時,也是必須在開發環境上安裝對應移動設備應用的SDK的。比如你要開發一個運行在Android上的應用,則必須安裝 Android的SDK包,開發iPhone應用,就要安裝iPhone sdk。本文將介紹如何安裝基于Android SDK下安裝PhoneGap。

無論是開發基于哪種平臺的移動應用,首先要到PhoneGap的官方網站下載

PhoneGap包(下載地址)。目前最新的版本是0.9.1,下載之后,解壓縮后,會發現如下圖所示的若干個文件夾:

這里,由于我們是構建Android應用,因此只有phonegap-android對我們是有用的。

由于PhoneGap是通過Ruby語言以及所開發的目標移動設備的SDK一起搭配工作的,因此除了下載PhoneGap外,開發者還必須安裝如下的軟件(以Android為例)

◆Android SDK,建議安裝最新的版本,比如Android 2.1或者2.2

◆Eclipse IDE

Apache Ant 1.8.1

◆JDK 1.5以上

◆Android 的Eclipse開發插件ADT

◆Ruby 1.9.1,建議到官網直接下載1.9.1的版本直接安裝。

此外,我們還要對windows下的運行環境變量進行設置。首先我們到控制面板-系統-環境變量中,增加如下幾個系統環境變量。

◆JAVA_HOME:指向所安裝的JDK的目錄,比如c:\jdk15

◆ANT_HOME:指向所安裝的Apache_ANT目錄,比如d:\ant

◆ANDROID_HOME;指向所安裝的Android SDK目錄,比如d:\androidsdk

對Path進行設置,分別將ruby,jdk,android sdk,ant加入到原有的path中,如:

  1. c:\ruby\bin;c:\jdk15\bin;d:\ant\bin;d:\androidsdk\tools  
  2.  

其中,下載Ruby 1.9.1的Windows版本后,直接選擇安裝到指定目錄即可。

在完成上面的這些工作后,我們接下來就通過PhoneGap框架的腳手架功能,快速生成一個android的原型程序。

#p#

通過PhoneGap生成基于Android的原型程序

1 進入PhoneGap-Android目錄,并進入MS-DOS方式,在命令行下,按如下格式執行該命令:

  1. ruby bin/droidgap "[android_sdk_path]" [name] [package_name] "[www]" "[path]"  
  2.  

上述參數說明如下:

其中android_sdk_path指定了android sdk的安裝位置,比如:

d:/androidsdk,注意這里不要寫成“\”,應該是“/”作為分隔符。

Name:要生成的android應用的名字。

Package_name:生成的android應用中源代碼中的包名,注意必須至少有一層的包關系,即com.XXXX的形式。

WWW:這里指應用中存放HTML,Javascipt,CSS的位置目錄名稱。

PATH:這里指通過PhoneGap生成的項目原型工程的目錄位置,注意的是,該目錄位置不能指定為eclipse的workspace工作空間內。

下面是一個例子:

  1. ruby bin/droidgap “d:/androidsdk” HelloWorldGap com.phonegap www  
  2.   “d:/HelloWorldGap”  
  3.  

運行上述命令后,會發現在D盤會生成一個HelloWolrdGap的工程目錄,phonegap已經為我們生成了項目的框架了。

將工程導入到Eclipse中

如果安裝了Android for eclipse的插件ADT后,我們可以將PhoneGap生成的工程導入到Eclipse中去。首先我們打開Eclipse,新建一個Android Project,如下圖

其中輸入Project name的名稱為HelloGapAndroid,其中在Create project from existing source中選擇上文中用PhoneGap生成的項目的目錄。之后在Eclipse中則會看到如下結構的

可以看到其中assets下的www目錄存放了工程中需要用到的HTML、Javascript和CSS文件。此外,還要確認工程的lib目錄下面,存在phonegap.jar文件。

接下來我們試著運行下這個工程,會在模擬器中看到如下效果:

運行的結果是顯示了PhoneGap中默認顯示的index.html頁面,其中演示了其中的一些功能,大家可以嘗試去試驗一下。

#p#

編寫HelloWorld程序

接下來,我們來在此基礎上編寫HelloWorld程序。我們切換到index.html中去,在代碼模式下,刪除原來phonegap生成的代碼,寫入如下代碼:

  1. >    
  2. <html>    
  3.     <head>    
  4.     <meta name="viewport" content="width=320; user-scalable=no" />      <meta http-equiv="Content-type" content="text/html; charset=utf-8">    
  5.     <title>PhoneGap Android Apptitle>    
  6.              <script type="text/javascript" charset="utf-8" src="phonegap.js">script>            
  7.            <script type="text/javascript" charset="utf-8">    
  8.                       var showMessageBox = function() {     
  9.               navigator.notification.alert("Hello World of PhoneGap");     
  10.                       }     
  11.                         function init(){     
  12.             document.addEventListener("deviceready", showMessageBox, true);                    
  13.                       }     
  14.   script>    
  15.   head>    
  16. <body onload="init();"  >    
  17.   body>    
  18. html>    
  19.  

可以看到,這其實是普通的HTML和Javascript代碼。首先在onload觸發的方法init中,通過Javascript的回調方法中調用了phonegap封裝好的事件

deviceready,這個事件含義是當設備在將其應用程序加載完畢后觸發的。在引入phonegap提供的API時,必須通過 的方式引入進行調用。在這里的回調函數showMessageBox中,就調用了phonegap封裝好的方法 navigator.notification.alert,這個方法實際上是

顯示了一個帶文本的提示框,運行結果如下圖:

#p#

改進HelloWorld程序

接下來我們改進下這個程序,實現的功能是我們可以在文本框里輸入名字,然后點確定按鈕后,彈出提示窗口顯示Hello+你輸入的名字。修改程序代碼如下:

  1. >    
  2.     
  3. <html>    
  4.     
  5.   <head>    
  6.     
  7.     <meta name="viewport" content="width=320; user-scalable=no" />    
  8.     
  9.     <meta http-equiv="Content-type" content="text/html; charset=utf-8">    
  10.     
  11.     <title>PhoneGaptitle>    
  12.     
  13.               <script type="text/javascript" charset="utf-8" src="phonegap.js">script>            
  14.     
  15.               <script type="text/javascript" charset="utf-8">    
  16.     
  17.               var displayHello = function() {     
  18.     
  19.                         var name =      document.getElementById("firstname").value;     
  20.     
  21.                         navigator.notification.alert("name" + name);     
  22.     
  23.             }     
  24.     
  25.    script>    
  26.     
  27.   head>    
  28.     
  29.   <body onload="init();" id="bdy" >    
  30.     
  31.             <div id="txt">    
  32.     
  33.             <input   type="text" name="firstname" id="firstname" />    
  34.     
  35.             div>    
  36.     
  37.             <div id ="btn">    
  38.     
  39.     <a href="#" class="btn" onclick="displayHello();">Say Helloa>    
  40.     
  41.             div>    
  42.     
  43.         div>    
  44.     
  45.   body>    
  46.     
  47. html>   
  48.    

如果你懂得HTML和Javascript的話,上面的程序實在容易理解。其中我們添加了一個名為firstname的文本框,并且在按鈕的onclick事件中調用的displayHello()方法中通過document.getElementById的Javascript方法獲得了用戶輸入的名字,然后同樣用navigator.notification.alert的方法輸出結果,輸入的界面和輸出的結果如下圖所示:

總結

通過PhoneGap這套開源框架對開發移動設備SDK的封裝,我們今后在開發移動應用時,只需要調用PhoneGap封裝好的API,結合已有的Java、HTML、CSS和Javascript技術,就可以很方便地進行開發了,更多的資料請查看PhoneGap的幫助文檔。

了解Android開發更多內容請看

[[16032]]

【編輯推薦】

  1. Adobe AIR登陸Android 跨平臺應用運行成現實
  2. 有效控制Android應用程序的耗電量
  3. Android數據庫事務淺析
  4. nbandroid:NetBeans的Android插件
責任編輯:佚名 來源: It168
相關推薦

2012-03-16 13:43:29

2011-07-19 13:26:50

iPhone PhoneGap 框架

2014-07-08 09:37:28

跨平臺Webhtml5

2011-07-06 11:16:32

Unity3DCocos2dSparrow Fra

2024-12-06 15:07:42

Python開發

2013-06-26 14:55:59

AppCan

2013-07-17 13:51:48

AppCanPhoneGap

2012-05-24 13:25:37

TitaniumPhoneGapAppcelerato

2010-11-11 09:04:05

跨平臺移動開發

2015-03-28 19:18:47

線下公開課51CTO沙龍MDSA

2014-07-04 09:43:22

2011-12-23 09:53:24

PhoneGap

2011-07-05 14:59:47

PhoneGapHTML 5

2024-05-22 09:54:19

2014-03-24 10:30:38

盧建暉跨平臺開發

2011-07-01 15:02:53

PhoneGap移動開發框架

2011-06-14 10:05:41

UDEAndroidJ2ME(K-Java

2011-09-05 11:27:17

Sencha Touc框架HTML5

2012-02-01 09:59:05

TitaniumPhoneGapiOS

2013-07-04 10:06:32

AppCan
點贊
收藏

51CTO技術棧公眾號

热re91久久精品国99热蜜臀| 亚洲精品久久在线| 特色特色大片在线| а√天堂资源在线| 亚洲免费综合| 亚洲精品videossex少妇| 国产一区二区网| 免费a在线看| 99这里只有精品| 国产精品视频xxxx| 日韩欧美激情视频| 999成人精品视频线3| 亚洲福利精品在线| 国产免费又粗又猛又爽| 成人超碰在线| 中文字幕一区二区三区在线观看| 成人黄色在线免费观看| 欧美高清69hd| 亚洲精选91| 久久精品国产久精国产一老狼 | 色播亚洲婷婷| 欧美 日韩 国产 精品| 免费观看日韩av| 性色av一区二区三区红粉影视| 黄色国产在线播放| 男男gay无套免费视频欧美| 日韩亚洲国产中文字幕欧美| 网站一区二区三区| 亚洲涩涩在线| 亚洲亚洲精品在线观看| 杨幂一区欧美专区| 国产毛片在线看| 99r国产精品| 国产高清不卡av| 国产精品一品二区三区的使用体验| 丝袜美腿亚洲一区二区图片| 97视频免费看| 欧美一级高潮片| 91精品国产福利在线观看麻豆| 亚洲天堂第二页| 香蕉网在线播放| 欧美久久精品| 亚洲精品国精品久久99热 | 欧美高清一级片| 欧美日韩欧美一区二区| 别急慢慢来1978如如2| 中文字幕乱码中文乱码51精品| 亚洲国产视频a| 成人免费看片视频在线观看| 在线观看h片| 国产精品污www在线观看| 日韩经典在线视频| 国产原创av在线| 国产人伦精品一区二区| 色爱区成人综合网| av在线首页| 国产精品免费观看视频| 亚洲图片欧洲图片日韩av| 99riav在线| 自拍视频在线观看一区二区| youjizz.com亚洲| 欧美jizz18性欧美| 亚洲特级片在线| 青青草视频在线视频| 欧美性爽视频| 亚洲丰满少妇videoshd| 啊啊啊一区二区| 激情开心成人网| 欧美亚洲一区二区在线| 污视频网站观看| 9999精品免费视频| 欧美videossexotv100| 国产乱国产乱老熟300部视频| 成人在线视频你懂的| 亚洲精品动漫100p| 国产伦理片在线观看| 日本欧美肥老太交大片| 麻豆国产va免费精品高清在线| 欧美成人手机视频| 午夜亚洲福利在线老司机| 欧洲亚洲免费视频| 亚洲一级特黄毛片| 国产不卡在线一区| 欧美黄色直播| 麻豆视频网站在线观看| 一级中文字幕一区二区| 久久久免费视频网站| 成人精品一区二区三区电影| 日韩一区二区三区观看| 日韩免费高清一区二区| 成人在线免费小视频| 欧美日本高清一区| 国产又黄又粗又爽| 国模少妇一区二区三区 | 欧美中文一区二区| 欧美人与性动交| 国产在线一级片| 粉嫩av亚洲一区二区图片| 欧美激情第六页| 色呦呦在线观看视频| 欧美特级www| 亚洲欧美日韩一二三区| 免费久久久久久久久| 久久精品成人动漫| 国产在线观看黄色| 国产精品888| 欧美午夜精品久久久久免费视| 米奇精品一区二区三区| 懂色av影视一区二区三区| aaaaaaaa毛片| 国产成人1区| 久久免费高清视频| 亚洲视频久久久| 91丨国产丨九色丨pron| 日韩人妻一区二区三区蜜桃视频| 久久91导航| 亚洲国产私拍精品国模在线观看| 国产视频精品免费| 久久一区亚洲| 精品国产一区二区三区麻豆小说 | 成人观看高清在线观看免费| 四虎影院在线播放| 亚洲一线二线三线视频| 91视频这里只有精品| 亚洲人亚洲人色久| 久久久久久亚洲精品| 国产精品人人爽| 亚洲国产成人私人影院tom| a√天堂在线观看| 国产一区二区三区亚洲| 免费av一区二区| 国产精品天天操| 国产精品水嫩水嫩| 狠狠热免费视频| 亚洲性视频大全| 91精品国产色综合| 搡老岳熟女国产熟妇| 亚洲国产成人高清精品| www.色.com| 久久久久久久久丰满| 国产日韩一区在线| 2021av在线| 欧美色精品在线视频| 久久亚洲无码视频| 免费在线一区观看| 婷婷久久青草热一区二区| 久久久久久久| 亚洲欧洲第一视频| 老熟妇仑乱一区二区av| 国产日韩欧美高清| 久久久久久久片| 欧美午夜精彩| 成人精品一区二区三区电影黑人 | 精品国产美女| 国产精品久久久久久久美男 | 亚洲欧美成人vr| 国产91精品黑色丝袜高跟鞋| 亚洲日本国产精品| 色中色一区二区| 色欲狠狠躁天天躁无码中文字幕 | 制服下的诱惑暮生| 激情丁香综合| 久久精品国产综合精品| 亚洲最大网站| 中文字幕欧美日韩| 国产精品老熟女视频一区二区| 一区二区中文字幕在线| 波多野结衣在线免费观看| 亚洲精品国产偷自在线观看| 3d精品h动漫啪啪一区二区| 欧美亚洲系列| 亚洲久久久久久久久久| 中文字幕欧美人妻精品| 亚洲女厕所小便bbb| 佐佐木明希电影| 免费欧美在线| 在线观看一区二区三区三州| 亚洲三区欧美一区国产二区| 91精品国产91久久久久福利| 国产大学生校花援交在线播放 | 国产精品毛片一区二区在线看| 51精品国产人成在线观看| 国产蜜臀一区二区打屁股调教| 亚洲毛片一区二区| www.桃色.com| 国产综合在线观看| 日韩欧美在线一区| 久久久久麻豆v国产| 国产成人精品亚洲777人妖| 男女激情无遮挡| 色爱综合网欧美| 国产精品久久久久免费| 成人h在线观看| 欧美高清videos高潮hd| 国产最新视频在线| 日韩精品一区国产麻豆| 国产免费a视频| 一个色妞综合视频在线观看| 国产熟妇搡bbbb搡bbbb| 国内精品国产三级国产a久久| 久久久久久久中文| 1024精品久久久久久久久| 久久国产精品精品国产色婷婷| 成人h在线观看| 97国产真实伦对白精彩视频8| 午夜在线视频| 亚洲精品日韩欧美| 亚洲国产精彩视频| 欧美伊人久久大香线蕉综合69 | jlzzjizz在线播放观看| 久久99国产精品麻豆| 成人三级视频在线播放| 亚洲欧洲视频| 中文字幕超清在线免费观看| 国产免费久久| 欧美极品一区二区| 老汉色老汉首页av亚洲| 亚洲最大福利视频| 国产精品蜜月aⅴ在线| 日本久久91av| 福利网站在线观看| 欧美成人精品一区二区三区| av电影在线网| 日韩精品在线观看一区| 亚洲欧美高清视频| 欧美一级艳片视频免费观看| 影音先锋黄色网址| 91久久精品一区二区二区| 日本中文字幕网| 一区二区三区成人| 天天天天天天天天操| 中文成人av在线| 一区二区精品免费| 久久久精品国产99久久精品芒果| av在线播放网址| 成人激情文学综合网| 手机看片国产精品| 国产精品主播直播| 日韩欧美中文视频| 国产伦精品一区二区三区视频青涩 | wwwxx欧美| 91蝌蚪精品视频| 国产精品午夜av在线| 一区二区日韩| 国产66精品久久久久999小说| 日韩激情精品| julia一区二区中文久久94| 日韩激情综合| 国产精品视频入口| 精品一区二区男人吃奶| 国偷自产av一区二区三区小尤奈| 久久久久观看| 久久久神马电影| 免费观看久久av| 五月天久久综合网| 欧美电影三区| 经典三级在线视频| 国产精品theporn| 国产特级淫片高清视频| 六月丁香综合| 亚洲77777| 国内精品写真在线观看| 男人的天堂免费| a在线欧美一区| 国产精品毛片一区二区| 国产精品每日更新在线播放网址| 国产日产精品一区二区三区的介绍| 亚洲柠檬福利资源导航| 日韩精品无码一区二区| 色老头久久综合| 一区二区国产欧美| 精品免费视频一区二区| 外国精品视频在线观看 | 日韩国产欧美三级| 五月天婷婷亚洲| 大美女一区二区三区| 国产精品探花一区二区在线观看| 国产欧美精品在线观看| 成人免费毛片东京热| 午夜久久久久久电影| 亚洲 欧美 中文字幕| 欧美精品亚洲二区| 欧美一级特黄aaaaaa| 国产一区二区三区在线视频 | 亚洲v日本v欧美v久久精品| 亚洲影院在线播放| 欧美一区二区视频在线观看2020| 黑人乱码一区二区三区av| 国产亚洲精品久久| 日本中文字幕中出在线| 国产成人一区三区| 日韩精品一区二区三区免费视频| 玛丽玛丽电影原版免费观看1977| 国产精品久久久久久影院8一贰佰 国产精品久久久久久麻豆一区软件 | 澳门久久精品| 日韩国产在线一区| 亚洲精品综合| 毛片毛片毛片毛片毛| 久久精品人人爽人人爽| 久久国产在线观看| 欧美视频三区在线播放| 亚洲欧美激情在线观看| 一个人www欧美| 爱啪视频在线观看视频免费| 成人国内精品久久久久一区| 免费国产自久久久久三四区久久| 中文字幕第50页| 蜜臀av在线播放一区二区三区| 免费观看污网站| 亚洲三级在线播放| 一级特黄免费视频| 日韩av网站在线| 福利写真视频网站在线| 亚洲va码欧洲m码| 欧美精品一区二区久久| 五月丁香综合缴情六月小说| 韩国三级中文字幕hd久久精品| 亚洲综合欧美综合| 色综合久久综合网欧美综合网| 精品人妻一区二区三区日产乱码| 最近2019中文免费高清视频观看www99 | 青青草原在线亚洲| 成人污网站在线观看| 看国产成人h片视频| 一色道久久88加勒比一| 欧美日韩亚洲成人| 欧美一级淫片免费视频魅影视频| 美女福利精品视频| 99视频这里有精品| 亚洲一区在线免费| 美国av一区二区| 波多野结衣一二三四区| 日本乱码高清不卡字幕| 色播色播色播色播色播在线| 97精品伊人久久久大香线蕉 | 国产精品第二十页| 日韩免费观看高清完整版 | 国产精品久久999| 免费成人av| 黄色a级片免费| 久久久亚洲精品一区二区三区| 久久免费激情视频| 日韩精品在线观看一区| 9i看片成人免费高清| 蜜桃臀一区二区三区| 日韩精品1区2区3区| 中文字幕 自拍| 欧美日韩电影在线播放| 三级外国片在线观看视频| 国产欧美精品在线| 亚洲精品久久| 国产人妻精品午夜福利免费| 一区二区三区免费在线观看| 亚洲国产精品成人久久蜜臀| 午夜精品久久久久久99热软件| 日本成人a网站| 国产美女三级视频| 亚洲国产电影在线观看| 91麻豆国产在线| 久久综合免费视频影院| 999在线精品| 免费成人在线视频网站| 久久久久国产精品麻豆ai换脸| 综合久久中文字幕| 久久天天躁日日躁| heyzo欧美激情| 欧美极品欧美精品欧美图片| 国产精品沙发午睡系列990531| 国产女18毛片多18精品| 欧美黑人极品猛少妇色xxxxx| 老牛国内精品亚洲成av人片| 成人性生生活性生交12| 亚洲日本青草视频在线怡红院| 亚洲精品国产一区二| 欧美亚洲成人免费| 91亚洲成人| 佐佐木明希电影| 在线精品视频一区二区三四| 麻豆tv入口在线看| 精品国产乱码一区二区三区四区| 日本成人在线一区| 久久久久久久久久久久久久免费看| 日韩h在线观看| 伊人久久大香线蕉综合影院首页| 国产a级黄色大片| 日本一区二区三区免费乱视频| 精品人妻一区二区三区换脸明星| 欧美整片在线观看| 一区二区三区在线观看免费| 国产美女喷水视频| 日韩亚洲欧美中文三级| 日本不卡一二三| 免费高清一区二区三区| 久久精品亚洲精品国产欧美kt∨| 国内老熟妇对白hdxxxx| 国产99久久精品一区二区| 午夜视频精品| 国产在线免费av| 亚洲国产精品久久久久| 亚洲伊人精品酒店|