PhoneGap是能夠讓你用普通的web技術編寫出能夠輕鬆調用API接口和進入應用商店的HTML5應用開發平臺。是唯一的一個支持7個平臺的開源移動框架。這裏以安卓爲例搭建開發環境。
1. 搭建安卓開發環境。(本文用的android官方提供的adt-bundle-windows集成開發環境,這裏安卓開發環境搭建不做介紹。)
2. 下載 PhoneGap,這裏下載的是phonegap-2.9.0.zip。
3 新建PhoneGap項目
3.1在eclipse中新建Android Project ,命名HelloPhoneGap。
3.2 在項目的目錄下,新建文件夾:
/assets/www
3.3 將前面下載的PhoneGap解壓,找到lib下android文件夾。
將cordova.js這個js文件複製到/assets/www目錄下。
把phonegap.jar文件複製到/libs目錄下。
再把xml目錄複製到android項目的res目錄下。
工程目錄如下:
4.在/assets/www下建立index.html文件,內容如下:
<!DOCTYPE HTML>
<html>
<head>
<title>PhoneGap</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
</head>
<body>
<h1>Hello,PhoneGap!</h1>
</body>
</html>
5.新建java文件,將類繼承爲DroidGap
將 setContentView() 這一行替換爲super.loadUrl("file:///android_asset/www/index.html");
package com.zyj.hellophonegap;
import org.apache.cordova.DroidGap;
import android.os.Bundle;
/**
* @Description TODO
*
* @author zyj
* @time 2014-12-8 10:29:44
*/
public class HelloWorld extends DroidGap {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl("file:///android_asset/www/index.html");
}
}
6.
將下面的權限設置增加到AndroidManifest.xml中:(如下圖)
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="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-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".HelloWorld"
android:configChanges="orientation|keyboardHidden"
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>
7. 模擬器運行,PhoneGap環境搭建完成。