關(guān)于搭建基于Android和PhoneGap開發(fā)環(huán)境圖文詳解
搭建基于Android和PhoneGap開發(fā)環(huán)境是本文要介紹的內(nèi)容,主要是來了解Android和PhoneGap的應(yīng)用,具體詳解來看詳細(xì)內(nèi)容。
IDE需要使用Eclipse 3.4+
安裝 SDK + PhoneGap
1、需要安裝eclipse 3.4+
- 下載地址:http://www.eclipse.org/downloads/
2、安裝ADT插件
添加ADT plug,地址為:
- http://dl-ssl.google.com/android/eclipse
3、下載并安裝 Android SDK
因為http://androidappdocs.appspot.com/sdk/index.html 被墻掉了,所以得另外找一個地址
Android SDK 3.1 (以下鏈接轉(zhuǎn)載至:
- http://www.cnblogs.com/yaotong/archive/2011/01/25/1943615.html)
Windows
- http://dl.google.com/android/android-sdk_r11-windows.zip
- http://dl.google.com/android/installer_r11-windows.exe
Mac OS X(intel)
- http://dl.google.com/android/android-sdk_r11-mac_x86.zip
Linux(i386)
- http://dl.google.com/android/android-sdk_r11-linux_x86.tgz
然后就是安裝了,需要很久很久….
別忘記了在系統(tǒng)環(huán)境變量中,添加android sdk的tools包路徑
(設(shè)置好以后可以在cmd下測試一下~)
環(huán)境弄好了,開始寫個Demo(詳情可參考PhoneGap的官網(wǎng),需要先下載PhoneGap-0.9.5)~
1、新建一個Android Project
2、導(dǎo)入需要的包、建議文件目錄
下圖是下載phonegap-0.9.5后解壓出來的包,復(fù)制phonegap.0.9.5.jar到***步建立的工程的libs目錄中
現(xiàn)在工程的目錄(紅色標(biāo)的為新建的目錄):
選中 phonegap.0.9.5.jar,右擊 -> Build Path –> Config Build Path… 切換到Libraries選項卡:
添加架包:
這時,可以看到libs目錄與assets、res一樣了,目錄圖標(biāo)左上角多了個東西
這里為了簡單,直接復(fù)制phonegap例子中的三個文件到www目錄下:
修改com.phonegap.helloworld包下面的App.java文件:
類繼承于DroidGap(默認(rèn)繼承類Activity)
注釋 setContentView(R.layout.main); 這一行,改為 super.loadUrl(file:///android_asset/www/index.html);
修改工程根目錄下的AndroidManifest.xml文件,添加如下內(nèi)容
- <supports-screens android:largeScreens="true"
- android:normalScreens="true"
- android:smallScreens="true"
- android:resizeable="true"
- android:anyDensity="true"
- />
- <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.READ_PHONE_STATE" />
- <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.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-feature android:name="android.hardware.camera" />
- <uses-feature android:name="android.hardware.camera.autofocus" />
在application節(jié)點下,找到activity節(jié)點,添加android:configChanges="orientation|keyboardHidden"
- <activity android:name=".exampleapp"
- android:label="@string/app_name"
- android:configChanges="orientation|keyboardHidden">
完整的文件內(nèi)容
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.phonegap.helloworld"
- android:versionCode="1"
- android:versionName="1.1">
- <supports-screens
- android:largeScreens="true"
- android:normalScreens="true"
- android:smallScreens="true"
- android:resizeable="true"
- android:anyDensity="true"
- />
- <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.READ_PHONE_STATE" />
- <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.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-feature android:name="android.hardware.camera" />
- <uses-feature android:name="android.hardware.camera.autofocus" />
- <application android:icon="@drawable/icon"
- android:label="@string/app_name"
- android:configChanges="orientation|keyboardHidden">
- <activity android:name=".App" android:label="@string/app_name">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- </application>
- <uses-sdk android:minSdkVersion="2" />
- </manifest>
3、運行項目
右擊項目,選中Run as 并點擊 Android Application ,如果***次啟動,需要配置模擬器的虛擬設(shè)備(可能會遇到問題,配置后無法啟動,把生成的文件.android移動到當(dāng)前登錄用戶的文檔目錄下就好了,網(wǎng)上也有很多其它解決方法)
如果不出其它意外情況,正常情況下將會看到類似下面的界面(運行起來比較慢、卡,需要點耐心~) :
進入界面(點中左側(cè)的“鎖”不放,向右移動,當(dāng) Unlock 顏色加深時就解鎖成功了)
需要再等待一會,在看到控制臺出現(xiàn)
- Starting activity com.phonegap.helloworld.App on device emulator-5554
之后,會看到下圖所示的界面
至此,***個web app在模擬器上就成功跑起來了。整體跑下來,感覺還是挺麻煩的,這玩意太消耗內(nèi)存了,機器會變的很卡,有時半天沒響應(yīng),真是需要點耐心
小結(jié):關(guān)于搭建基于Android和PhoneGap開發(fā)環(huán)境的內(nèi)容介紹完了,希望通過本文的學(xué)習(xí)能對你有所幫助!