关于搭建基于Android和PhoneGap开发环境图文详解

移动开发
搭建基于Android和PhoneGap开发环境是本文要介绍的内容,主要是来了解Android和PhoneGap的应用,具体详解来看详细内容。

搭建基于AndroidPhoneGap开发环境是本文要介绍的内容,主要是来了解AndroidPhoneGap的应用,具体详解来看详细内容。

IDE需要使用Eclipse 3.4+

安装 SDK + PhoneGap

1、需要安装eclipse 3.4+ 

下载地址:http://www.eclipse.org/downloads/ 
  • 1.

2、安装ADT插件

搭建基于Android和PhoneGap开发环境 

搭建基于Android和PhoneGap开发环境

添加ADT plug,地址为:

http://dl-ssl.google.com/android/eclipse 
  • 1.

3、下载并安装 Android SDK

因为http://androidappdocs.appspot.com/sdk/index.html 被墙掉了,所以得另外找一个地址

Android SDK 3.1 (以下链接转载至:

http://www.cnblogs.com/yaotong/archive/2011/01/25/1943615.html) 
  • 1.

Windows

http://dl.google.com/android/android-sdk_r11-windows.zip   
http://dl.google.com/android/installer_r11-windows.exe  
  • 1.
  • 2.

Mac OS X(intel)

http://dl.google.com/android/android-sdk_r11-mac_x86.zip  
  • 1.

Linux(i386)

http://dl.google.com/android/android-sdk_r11-linux_x86.tgz 
  • 1.

然后就是安装了,需要很久很久….

别忘记了在系统环境变量中,添加android sdk的tools包路径

搭建基于Android和PhoneGap开发环境

(设置好以后可以在cmd下测试一下~)

环境弄好了,开始写个Demo(详情可参考PhoneGap的官网,需要先下载PhoneGap-0.9.5)~

1、新建一个Android Project

搭建基于Android和PhoneGap开发环境 

搭建基于Android和PhoneGap开发环境

2、导入需要的包、建议文件目录

下图是下载phonegap-0.9.5后解压出来的包,复制phonegap.0.9.5.jar到***步建立的工程的libs目录中

搭建基于Android和PhoneGap开发环境

现在工程的目录(红色标的为新建的目录):

搭建基于Android和PhoneGap开发环境

选中 phonegap.0.9.5.jar,右击 -> Build Path –> Config Build Path…   切换到Libraries选项卡:

搭建基于Android和PhoneGap开发环境

添加架包:

搭建基于Android和PhoneGap开发环境

这时,可以看到libs目录与assets、res一样了,目录图标左上角多了个东西

搭建基于Android和PhoneGap开发环境

这里为了简单,直接复制phonegap例子中的三个文件到www目录下:

搭建基于Android和PhoneGap开发环境

修改com.phonegap.helloworld包下面的App.java文件:

搭建基于Android和PhoneGap开发环境

类继承于DroidGap(默认继承类Activity)

注释 setContentView(R.layout.main); 这一行,改为 super.loadUrl(file:///android_asset/www/index.html);

修改工程根目录下的AndroidManifest.xml文件,添加如下内容

<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" /> 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.

在application节点下,找到activity节点,添加android:configChanges="orientation|keyboardHidden"

<activity android:name=".exampleapp" 
  android:label="@string/app_name"   
  android:configChanges="orientation|keyboardHidden"> 
  • 1.
  • 2.
  • 3.

完整的文件内容

<?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> 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.

3、运行项目

右击项目,选中Run as 并点击 Android Application ,如果***次启动,需要配置模拟器的虚拟设备(可能会遇到问题,配置后无法启动,把生成的文件.android移动到当前登录用户的文档目录下就好了,网上也有很多其它解决方法)

如果不出其它意外情况,正常情况下将会看到类似下面的界面(运行起来比较慢、卡,需要点耐心~) :

搭建基于Android和PhoneGap开发环境

进入界面(点中左侧的“锁”不放,向右移动,当 Unlock 颜色加深时就解锁成功了)

搭建基于Android和PhoneGap开发环境

需要再等待一会,在看到控制台出现

Starting activity com.phonegap.helloworld.App on device emulator-5554 
  • 1.

之后,会看到下图所示的界面

搭建基于Android和PhoneGap开发环境

至此,***个web app在模拟器上就成功跑起来了。整体跑下来,感觉还是挺麻烦的,这玩意太消耗内存了,机器会变的很卡,有时半天没响应,真是需要点耐心

小结:关于搭建基于AndroidPhoneGap开发环境的内容介绍完了,希望通过本文的学习能对你有所帮助!

责任编辑:zhaolei 来源: 互联网
相关推荐

2011-12-22 14:36:36

PhoneGapWindows Pho环境搭建

2020-11-24 10:40:12

Ubuntu 20.0LinuxVue

2012-03-07 11:30:09

PhoneGapWindows Pho

2022-10-14 15:44:03

大数据Hadoop

2011-09-02 13:51:00

PhoneGap框架HTML5

2011-07-05 15:26:23

2010-08-31 09:39:37

2011-08-30 16:22:00

MTK开发环境

2013-07-23 06:11:44

Android开发学习Android开发环境Java

2011-08-24 14:33:14

LUA开发环境Decoda

2011-09-05 14:42:01

PhoneGap框架

2012-05-15 14:00:51

WP7开发环境

2011-08-25 15:02:17

Lua环境搭建EditPlus

2011-05-26 10:33:26

Android开发

2017-03-02 15:33:24

Android Thi环境搭建

2011-09-02 13:30:43

Android SDKPhoneGap

2011-09-14 09:40:06

Android开发

2011-09-02 14:06:38

PhoneGapEclipseAndroid

2011-09-13 17:15:58

Eclipse And

2011-09-14 10:52:39

Android 2.2
点赞
收藏

51CTO技术栈公众号