欢迎访问 夜阑小雨 我的学习碎片档案,这里记录了我的学习内容和工作中经验,希望给您带去帮助。

PhoneGap 2.9.0 安卓环境配置

phonegap开发 夜阑小雨 1238℃ 0评论

java环境的JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html

我安装的是64位,下载自己系统环境需要的版本,下载后默认安装,完成后 在 开始 – 输入cmd- 输入java 显示出java版本信息表示安装已经成功

接着安装

一、下载安装ADT。http://developer.android.com/sdk/index.html

二、Android的压缩包为:adt-bundle-windows-x86_64。

  解压后,进入eclipse目录,运行eclipse.exe。

1)先更新Android包:选择 Window ——–>Android SDK Manager

全部勾选后,点击 Install packages,将所有包全部打上。

2)配置AVD环境

配置该环境有两种方法:

1、使用界面进行配置,进入方式如图所示:

打开之后,如图所示,点击New新建。

三、配置PhoneGap(这个比较麻烦)

1)先新建一个新的工程。

具体详细可以查看:

http://developer.android.com/intl/zh-CN/training/basics/firstapp/creating-project.html

打开ADT,新建一个安卓应用项目

输入名称,然后下一步

可以选择下项目位置,我的是默认的。

这里可以选择图标。

选择第一个

这个时候,一个安卓项目就建好了。

phonegap下载地址:http://phonegap.com/install/

将PhoneGap目录下的android目录下的jar文件拷贝到项目的libs目录下

将xml目录拷贝到项目的res目录下

在assetc目录下,建立一个www目录,下面放html内容。为了偷懒,我把phonegap例子里面的内容拷贝过来了。

修改Java代码:

package com.myexample.helloworld;

import android.os.Bundle;

import org.apache.cordova.*;

public class MainActivity extends DroidGap

{

@Override

public void onCreate(Bundle savedInstanceState)

{

super.onCreate(savedInstanceState);

// Set by <content src="index.html" /> in config.xml

super.loadUrl(Config.getStartUrl());

//super.loadUrl("file:///android_asset/www/index.html")

}

}

/*

* 下面是adt生成的代码,注释掉

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

public class MainActivity extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

}*/

 

修改一下项目根目录下的AndroidManifest.xml和res/xml目录下的config.xml文件
AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>

<!--

Licensed to the Apache Software Foundation (ASF) under one

or more contributor license agreements.  See the NOTICE file

distributed with this work for additional information

regarding copyright ownership.  The ASF licenses this file

to you under the Apache License, Version 2.0 (the

"License"); you may not use this file except in compliance

with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,

software distributed under the License is distributed on an

"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

KIND, either express or implied.  See the License for the

specific language governing permissions and limitations

under the License.

-->

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="com.myexample.helloworld"

android:hardwareAccelerated="true"

android:versionCode="1"

android:versionName="1.0"

android:windowSoftInputMode="adjustPan" >

<supports-screens

android:anyDensity="true"

android:largeScreens="true"

android:normalScreens="true"

android:resizeable="true"

android:smallScreens="true"

android:xlargeScreens="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.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" />

<application

android:debuggable="true"

android:hardwareAccelerated="true"

android:icon="@drawable/ic_launcher"

android:label="@string/app_name" >

<activity

android:name="com.myexample.helloworld.MainActivity"

android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale"

android:label="@string/app_name"

android:theme="@android:style/Theme.Black.NoTitleBar" >

<intent-filter>

<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />

</intent-filter>

</activity>

</application>

<uses-sdk

android:minSdkVersion="7"

android:targetSdkVersion="17" />

</manifest>

config.xml

<?xml version="1.0" encoding="UTF-8"?>

<!--

Licensed to the Apache Software Foundation (ASF) under one

or more contributor license agreements.  See the NOTICE file

distributed with this work for additional information

regarding copyright ownership.  The ASF licenses this file

to you under the Apache License, Version 2.0 (the

"License"); you may not use this file except in compliance

with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,

software distributed under the License is distributed on an

"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

KIND, either express or implied.  See the License for the

specific language governing permissions and limitations

under the License.

-->

<widget

id="com.myexample.helloworld"

version="2.0.0"

xmlns="http://www.w3.org/ns/widgets" >

<name>

helloworld

</name>

<description>

A sample Apache Cordova application that responds to the deviceready event.

</description>

<author

email="dev@cordova.apache.org"

href="http://cordova.io" >

Apache Cordova Team

</author>

<access origin="*" />

<!-- <content src="http://mysite.com/myapp.html" /> for external pages -->

<content src="index.html" />

<preference

name="loglevel"

value="DEBUG" />

<!--

<preference name="splashscreen" value="resourceName" />

<preference name="backgroundColor" value="0xFFF" />

<preference name="loadUrlTimeoutValue" value="20000" />

<preference name="InAppBrowserStorageEnabled" value="true" />

<preference name="disallowOverscroll" value="true" />

-->

<feature name="App" >

<param

name="android-package"

value="org.apache.cordova.App" />

</feature>

<feature name="Geolocation" >

<param

name="android-package"

value="org.apache.cordova.GeoBroker" />

</feature>

<feature name="Device" >

<param

name="android-package"

value="org.apache.cordova.Device" />

</feature>

<feature name="Accelerometer" >

<param

name="android-package"

value="org.apache.cordova.AccelListener" />

</feature>

<feature name="Compass" >

<param

name="android-package"

value="org.apache.cordova.CompassListener" />

</feature>

<feature name="Media" >

<param

name="android-package"

value="org.apache.cordova.AudioHandler" />

</feature>

<feature name="Camera" >

<param

name="android-package"

value="org.apache.cordova.CameraLauncher" />

</feature>

<feature name="Contacts" >

<param

name="android-package"

value="org.apache.cordova.ContactManager" />

</feature>

<feature name="File" >

<param

name="android-package"

value="org.apache.cordova.FileUtils" />

</feature>

<feature name="NetworkStatus" >

<param

name="android-package"

value="org.apache.cordova.NetworkManager" />

</feature>

<feature name="Notification" >

<param

name="android-package"

value="org.apache.cordova.Notification" />

</feature>

<feature name="Storage" >

<param

name="android-package"

value="org.apache.cordova.Storage" />

</feature>

<feature name="FileTransfer" >

<param

name="android-package"

value="org.apache.cordova.FileTransfer" />

</feature>

<feature name="Capture" >

<param

name="android-package"

value="org.apache.cordova.Capture" />

</feature>

<feature name="Battery" >

<param

name="android-package"

value="org.apache.cordova.BatteryListener" />

</feature>

<feature name="SplashScreen" >

<param

name="android-package"

value="org.apache.cordova.SplashScreen" />

</feature>

<feature name="Echo" >

<param

name="android-package"

value="org.apache.cordova.Echo" />

</feature>

<feature name="Globalization" >

<param

name="android-package"

value="org.apache.cordova.Globalization" />

</feature>

<feature name="InAppBrowser" >

<param

name="android-package"

value="org.apache.cordova.InAppBrowser" />

</feature>

<!-- Deprecated plugins element. Remove in 3.0 -->

<plugins>

</plugins>

</widget>

 

然后,就可以运行了

转载请注明:夜阑小雨 » PhoneGap 2.9.0 安卓环境配置

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址