一、安装
在安装PhoneGap开发环境之前,需要先安装以下框架:
2.
Eclipse
3.
Android SDK
4.
ADT Plugin
5.
PhoneGap
说明:1.java sdk 主要安装:jdk,环境变量配置 等
2.eclipse 配置安装 菜单栏没有,则安装ADT Plugin。
3.Android SDK 下载配置:
环境变量:新建-》变量名:Android_Sdk_Home
变量值:D:\adroid\adt-bundle-windows-x86_64-20131030\sdk
添加:path :
添加 变量值:;%Android_Sdk_Home%\platform-tools;%Android_Sdk_Home%\tools
测试用的命令:cmd -> adb 出现具体信息说明正确
4.查看sdk是否更新,必须保持sdk与adt的一致性。果断时间更新一次
运行avd 点击 然后 点击右边的New..
填入名字和device。 依据个人习惯
点击ok。点击的start。正常启动
5.
在搭建好安卓环境后,配置phonegap,并创建一个安卓项目:
1、
new→project→android→android→Android Application project,然后一直点击下一步,输入项目的基本信息。
2、项目创建完成后在assets文件目录下创建→www文件夹;下载PhoneGap,解压缩即可。
(1)把phonegap——lib——android目录下的cordova-1.7.0.js(下载的phonegap版本为准)文件拷贝到刚刚创建的www目录下。
(2)把cordova-1.7.0.jar文件拷贝到libs文件夹里。
(3)phonegap里的xml文件夹拷贝到项目目录下的res文件夹里。
3、在/assets/www下建立index.html文件,并链接上phonegap的js文件,如:
<!DOCTYPE HTML> <html> <head> <title></title> <script type="text/javascript" charset="utf-8" src="cordova-1.7.0.js"></script> </head> <body> <h1>hellolloleooehi</h1> </body> </html>
4、对src文件夹下的XXX.java文件作如下修改(这个不一定准哦,有错误就点击左侧的红叉):
1)
修改类的继承 将Activity 修改为 DroidGap
2)把setContentView()这行替换为super.loadUrl("file:///android_asset/www/index.html");
3)可能需要添加import org.apache.cordova.DroidGap;
看看我的例子:
package com.first.phonegap;
import org.apache.cordova.DroidGap;
import android.os.Bundle;
public class FirstActivity extends DroidGap {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl("file:///android_asset/www/index.html");
}
5、在项目根目录下右键点击AndroidManifest.xml文件,选择Open With > Text Editor(打开方式->文本编辑器),
修改后的内容如下:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.fruit" android:versionCode="1" android:versionName="1.0" > /*将下面的权限设置拷贝到此位置 start{*/ <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" /> /*}end*/ //依据当前sdk和api相对应的值填写 <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="19" ></uses-sdk> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:configChanges="orientation|keyboardHidden" //此行内容为新增的 android:label="@string/title_activity_main" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>