基于第一個PhoneGap(cordova)的應(yīng)用詳解
PhoneGap是一套能讓你使用HTML5輕松調(diào)用本地API接口和發(fā)布應(yīng)用到商店的應(yīng)用開發(fā)平臺。官方說有低成本,低開發(fā)周期,輕量化等優(yōu)點,這些咱暫時也沒法證明,略過不表。但是有一條跨平臺,卻是很明顯的優(yōu)勢。因為它采用HTML5+JavaScript的模式來開發(fā)應(yīng)用。PhoneGap用JavaScript統(tǒng)一封裝了幾大平臺的本地api(Andriod,IOS,WP8/7,WINRT)等等。。這樣的話從一個平臺移植到另外一個平臺只需要把HTML代碼跟JS原封不動的拿過去,打包一下就可以了。PhoneGap后來被Adobe收購,然后又貢獻給了開源社區(qū),現(xiàn)在由Apache管理,改名cordova。
為了給昨天的html5畫圖板移植到移動設(shè)備上,我決定采用phoneGap平臺,這樣只要編寫一邊就可以多出運行了。
今天先在Andriod下架設(shè)phoneGap環(huán)境。
1.下載phoneGap
http://phonegap.com/download/#autodownload
解壓出來,找到lib/android目錄。
2.在eclipse下新建Andriod項目,這個跟普通項目一樣。
3.在assets目錄下新建文件夾“www”
把lib/android目錄下的cordova-2.6.0.js復(fù)制到這個目錄下。把cordova-2.6.0.jar復(fù)制到libs目錄下。

4.在www目錄下新建一個html文件index.html。我們的界面就要在這里建立了。

index的代碼如下:
<!doctype html>
<html>
<head>
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
<title>HTML5Paint</title>
<script type="text/javascript" src="cordova-2.6.0.js" charset="utf-8"></script>
<script type="text/javascript">
alert("HELLO CORDOVA");
</script></p> <p></head>
<body></p> <p><h1>HTML5Paint</h1>
</body>
</html>
5.把lib/android目錄下的xml文件夾整個復(fù)制到res面目下

6.修改AndroidManifest.xml添加用戶權(quán)限
在<manifest >標(biāo)簽的內(nèi)的最前部添加如下代碼
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true"
android:resizeable="true"
android:anyDensity="true"
/></p> <p> <uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.RECORD_VIDEO"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
7.修改MainAcivity.java
public class MainActivity extends DroidGap {</p> <p> @Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.loadUrl("file:///android_asset/www/index.html");
}</p> <p>}
8.build一下會有錯誤,這是因為前面的cordova-2.6.0.jar沒有添加到buildpath里面去。添加buildpath。

繼續(xù)build就過了。
最后run一下:


這樣一個phonegap的Andriod程序就搞定了。明天把昨天的那個HTML5畫板移植過來。
相關(guān)文章

HTML5實現(xiàn)的移動端購物車自動結(jié)算功能示例代碼
本文介紹HTML5實現(xiàn)移動端購物車自動結(jié)算,通過WebStorage、事件監(jiān)聽、DOM操作等技術(shù),確保實時更新與數(shù)據(jù)同步,優(yōu)化性能及無障礙性,提升用戶體驗,感興趣的朋友一起看看吧2025-06-18- 在HTML5中,<button>標(biāo)簽用于定義一個可點擊的按鈕,它是創(chuàng)建交互式網(wǎng)頁的重要元素之一,本文將深入解析HTML5中的<button>標(biāo)簽,詳細介紹其屬性、樣式以及實際2025-06-18
基于 HTML5 Canvas 實現(xiàn)圖片旋轉(zhuǎn)與下載功能(完整代碼展示)
本文將深入剖析一段基于 HTML5 Canvas 的代碼,該代碼實現(xiàn)了圖片的旋轉(zhuǎn)(90 度和 180 度)以及旋轉(zhuǎn)后圖片的下載功能,通過對代碼的解讀,我們可以學(xué)習(xí)到如何利用 Canvas API2025-06-18
HTML5 getUserMedia API網(wǎng)頁錄音實現(xiàn)指南示例小結(jié)
本教程將指導(dǎo)你如何利用這一API,結(jié)合Web Audio API,實現(xiàn)網(wǎng)頁錄音功能,從獲取音頻流到處理和保存錄音,整個過程將逐步詳解,此外,還討論了getUserMedia API的使用限制和最2025-06-16- HTML5的搜索框是一個強大的工具,能夠有效提升用戶體驗,通過結(jié)合自動補全功能和適當(dāng)?shù)臉邮?,可以?chuàng)建出既美觀又實用的搜索界面,這篇文章給大家介紹HTML5 搜索框Search Box2025-06-13
- Checkbox是HTML5中非常重要的表單元素之一,通過合理使用其屬性和樣式自定義方法,可以為用戶提供豐富多樣的交互體驗,這篇文章給大家介紹HTML5中Checkbox標(biāo)簽的深入全面解2025-06-13
- 本實例展示了一種基于HTML5技術(shù)的圖片上傳功能,無需外部插件即可通過拖放圖片實現(xiàn)上傳,涉及到HTML5的拖放API和File API,以及使用CSS來增強用戶界面的交互性和視覺反饋,2025-05-16
- 在HTML5和CSS中,定位(positioning)是控制元素在頁面上位置的重要機制,主要有四種定位方式:靜態(tài)定位(static)、相對定位(relative)、絕對定位(absolute)和固定定位(fixed),2025-05-13
- Microdata作為HTML5新增的一個特性,它允許開發(fā)者在HTML文檔中添加更多的語義信息,以便于搜索引擎和瀏覽器更好地理解頁面內(nèi)容,本文將探討HTML5中Microdata的使用方法以及2025-04-21
在HTML語法中,表格主要通過< table >、< tr >和< td >3個標(biāo)簽構(gòu)成,本文通過實例代碼講解HTML5表格語法格式,感興趣的朋友一起看看吧2025-04-21




