今天想重新搭建一個phonegap環境,用eclipse+phonegap,使用的是corvada1.7.0版本,ADT是17,基於android2.2
第一次搭建失敗,很奇怪,不知道哪里出錯,總是無法正常運行。官方上的文檔也不可全信啊。急死人了。
剛剛弄好了,可能是以前沒有嚴格按照官方要求去做,順序什么的有問題,又重新做了一遍,現在可以了。
下面是步驟,以后會嘗試用dreaweav搭建一個phonegap環境:
1、打開 Eclipse,在文件菜單下面點擊 New > Android Project
這里的packagename可以填寫自己想要的名字,下面點擊完成就可以了。
2、在項目的根目錄, 創建兩個目錄:
/libs
/assets/www
從剛才下載的PhoneGap中復制cordava-1.7.0.js 到/assets/www目錄
從剛才下載的PhoneGap中復制cordova-1.7.0.jar 到/libs目錄
從剛才下載的PhoneGap中復制xml文到夾到/res 目錄
對Eclipse的src文件夾中的主Java文件進行少量調整:(如下圖)
將class的繼承類由 Activity改為DroidGap
將setContentView() 這一行替換為super.loadUrl("file:///android_asset/www/index.html");
添加import org.apache.cordova.*;
移除 import android.app.Activity;
就像下面這樣:
3、右鍵單擊AndroidManifest.xml並選擇 打開方式 > 文本編輯器
將下面的權限設置拷貝到versionName之后:(如下圖)紅色部分是需要自己添加的:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.cordova.test"
android:versionCode="1"
android:versionName="1.0" >
<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-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-sdk android:minSdkVersion="8" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".TestActivity"
android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
4、寫一個HelloWorld測試一下吧:
在 “/assets/www”目錄中新建文件index.html ,並粘貼如下代碼:
<!DOCTYPE HTML>
<html>
<head>
<title>PhoneGap</title>
<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
</head>
<body>
<h1>Hello World</h1>
</body>
</html>
5、運行
可以在模擬器中運行,在項目名上右擊,選擇運行方式->運行配置,在target選項卡中選擇Manual單選框,再點擊應用
再點擊運行,會彈出一個下圖的對話框:
上面一部分是把項目部署到實際的手機中,需要將手機連接到電腦中,並且開啟USB調試,而下面一個框,則是部署到模擬器中,這里需要新建過模擬器,
沒有的話,可以點擊Manager新建一個模擬器,再選中這個模擬器,確定即可
先部署到模擬器中試試:
成功了。
部署到手機:
又成功了。
|