PhoneGap官方网站上有详细的入门示例教程,这里,我针对使用PhoneGap进行Android移动应用的开发对其官网的Get Started进行一些介绍、补充。

Step1、选择你想要进行开发的移动平台,点击Android图标

Step2、需要安装的软件-Eclipse3.4以上版本

Step3、安装SDK+PhoneGap

(1)安装Eclipse3.4,我安装使用的为3.6版本中文语言包(如果你使用的是英文原版,下面的一些操作请自行和我的中文描述对应),ADT Plugin要求使用3.5.1以上版本 。如果你对Eclipse不了解,不知道使用哪种版本的,建议下载Eclipse Classic版本。Eclipse为绿色版软件,下载后解压到任意位置均可使用。

(2)下载安装JDK (java SDK)。android SDK 依赖于JDK,所以必须先安装JDK 。JDK1.6官方下载 。JDK 安装好以后,需要配置系统环境变量。配置系统环境变量.

(3)下载安装Android SDK (android官方下载地址不可直接访问,华军有当前最新版本的SDK下载,访问这里)。同JDK设置环境变量一样,需要设置ADK的环境变量为(以我 安装ADK的路径为例) M:\Program Files\Android\android-sdk\platform-tools

(4)下载安装 ADT Plugin 是一款Eclipse的插件,用于快速开发Android应用。

(5)下载最新版本的PhoneGap

以上所有都安装好以后,再进行下一步

Step4

◆打开Eclipse,选择文件->新建->其他->Android Project

并建立一个专案本文以 [helloinside]为名称,分别输入专案的属性为

Application name:helloinside

Package name:com.phonegap.helloinside

Create Activity:app

这一步如果遇到No target available ,是因为ADK环境没配置好 首选项—>android—>选择android-sdk的路径,然后点击应用即可。(需要重新启动Eclipse)

注:目前PhoneGap 0.9.3用Android 2.3以上版本会出错,所以Build Target请选 Android 2.2以下的版本。

◆在新建项目的根目录下,创建两个目录

  1. /libs
  2. /assets/www

◆解压PhoneGap文件夹,复制phonegap.js文件到/assets/www 目录下,复制phonegap.jar文件到libs目录下

◆需要对Eclipse下项目的App.java文件(src文件夹内)进行一些配置(如图所示)

修改类的继承 将Activity 修改为 DroidGap

将setContentView() 这一行修改为super.loadUrl("file:///android_asset/www/index.html");

添加 import com.phonegap.*;

有可能在这里会遇到一个错误,显示Eclipse找不到phonegap-0.9.2.jar ,右键点击/libs文件夹,Build Paths(构建路径)/ > Configure Build Paths(配置构建路径) 在library(库)栏向工程中添加phonegap-0.9.4.jar ,可能需要按一次F5刷新。

◆右键点击AndroidManifest.xml文件,选择Open With > Text Editor(打开方式->文本编辑器)

◆粘贴下面的授权信息至版本名称后面(如图所示)

  1. <supports-screens
  2. android:largeScreens="true"
  3. android:normalScreens="true"
  4. android:smallScreens="true"
  5. android:resizeable="true"
  6. android:anyDensity="true"
  7. />
  8. <uses-permissionandroid:name="android.permission.CAMERA"/>
  9. <uses-permissionandroid:name="android.permission.VIBRATE"/>
  10. <uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION"/>
  11. <uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"/>
  12. <uses-permissionandroid:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
  13. <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
  14. <uses-permissionandroid:name="android.permission.INTERNET"/>
  15. <uses-permissionandroid:name="android.permission.RECEIVE_SMS"/>
  16. <uses-permissionandroid:name="android.permission.RECORD_AUDIO"/>
  17. <uses-permissionandroid:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
  18. <uses-permissionandroid:name="android.permission.READ_CONTACTS"/>
  19. <uses-permissionandroid:name="android.permission.WRITE_CONTACTS"/>
  20. <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
  21. <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>

◆向activity标记中添加android:configChanges="orientation|keyboardHidden” (如上图所示)

Step5

◆新建一个index.html文件至/assets/www目录下

◆粘贴下面的代码至index.html文件中

  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <title>PhoneGap</title>
  5. <scripttype="text/javascript"charset="utf-8"src="phonegap.js"></script>
  6. </head>
  7. <body>
  8. <h1>Hello World!</h1>
  9. </body>
  10. </html>

Step6

◆右键点击项目,选择 运行方式-> Android Application

◆Eclipse可能会询问你选择一个AVD(Android运行的虚拟设备),如果没有,你可以创建一个(建议选择2.2版本)

注意:运行时初始启动较慢,需要耐心等待几分钟。

如果你看到了下面这张图,恭喜你,hello world运行成功!

Step7

◆确保你的设备上开启了USB debug模式,并且通过USB线将它连接到电脑上(你的设备:设置->应用->开发)

◆右键点击项目,选择 运行方式-> Android Application

OK ! 如果不出意外的话,你的第一个Android版应用 Hello World!就已经大功告成了。接下来,你可以参阅PhoneGap wiki

phonegap学习入门的更多相关文章

  1. 每天成长一点---WEB前端学习入门笔记

    WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工 ...

  2. C# BackgroundWorker组件学习入门介绍

    C# BackgroundWorker组件学习入门介绍 一个程序中需要进行大量的运算,并且需要在运算过程中支持用户一定的交互,为了获得更好的用户体验,使用BackgroundWorker来完成这一功能 ...

  3. 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV

    这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...

  4. 给深度学习入门者的Python快速教程 - numpy和Matplotlib篇

    始终无法有效把word排版好的粘贴过来,排版更佳版本请见知乎文章: https://zhuanlan.zhihu.com/p/24309547 实在搞不定博客园的排版,排版更佳的版本在: 给深度学习入 ...

  5. UML学习入门就这一篇文章

    1.1 UML基础知识扫盲 UML这三个字母的全称是Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言. 你可能会问:这明明是一种图形,为什 ...

  6. Phonegap学习点滴(2) -- 网络状态检测

    Phonegap学习点滴(2) -- 网络状态检测  http://blog.csdn.net/x251808026/article/details/16992943 方法一:在MainActivit ...

  7. Stanford Parser学习入门(2)-命令行运行

    在Stanford parser目录中已经定义了一部分命令行工具以及图形界面,本文将介绍如何在windows使用这些工具进行语法分析,Linux下也有shell可以使用. 关于如何搭建环境请参考上一篇 ...

  8. Python学习入门基础教程(learning Python)--5.6 Python读文件操作高级

    前文5.2节和5.4节分别就Python下读文件操作做了基础性讲述和提升性介绍,但是仍有些问题,比如在5.4节里涉及到一个多次读文件的问题,实际上我们还没有完全阐述完毕,下面这个图片的问题在哪呢? 问 ...

  9. 深度学习入门实战(二)-用TensorFlow训练线性回归

    欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者 :董超 上一篇文章我们介绍了 MxNet 的安装,但 MxNet 有个缺点,那就是文档不太全,用起来可能 ...

随机推荐

  1. eclipse中的项目导出成Androidstudio的识别的项目,so文件打包不进去

    需要加入jniLibs.srcDirs = ['libs']才可以把so文件打入包内 sourceSets { main { manifest.srcFile 'AndroidManifest.xml ...

  2. Appium移动自动化测试(二)--安装Android开发环境(转)

    Appium移动自动化测试(二)--安装Android开发环境 2015-06-04 17:30 by 虫师, 35299 阅读, 23 评论, 收藏, 编辑 继续Appium环境的搭建. 第二节   ...

  3. Hibernate四 批量处理

    Hibernate批量处理一 批量插入将很多条记录插入数据库时,Hibernate通常会采用以下做法:public void test() { for(int i=0;i<1000;i++){ ...

  4. HDU1700:Points on Cycle

    Problem Description There is a cycle with its center on the origin. Now give you a point on the cycl ...

  5. ZOJ 1301 The New Villa (BFS + 状态压缩)

    题意:黑先生新买了一栋别墅,可是里面的电灯线路的连接是很混乱的(每个房间的开关可能控制其他房间,房间数<=10),有一天晚上他回家时发现所有的灯(除了他出发的房间)都是关闭的,而他想回卧室去休息 ...

  6. is not in the sudoers file.This incident will be reported

    解决方法如下: 1>.进入超级用户模式.也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式. 2>.添加文件的写权限.也就是输入命令&q ...

  7. Android系统移植与驱动开发——第五章--搭建开发板的测试环境

    开发板上安装嵌入式系统要比手机上简洁很多,有很多扩展的接口,适合对程序进行测试,这里所提及的是S3C6410开发板.它是由三星公司推出的一款低功耗/高性价比的RISC处理器.,其中包含强大的硬件加速器 ...

  8. ASP.NET面试

    1.net中读写数据库需要用到那些类?他们的作用都是什么?答:DataSet:数据存储器.DataCommand:执行语句命令.DataAdapter:数据的集合,用语填充.2.介绍一下什么是Code ...

  9. ASP.NET图片验证码学习!

    1. 新建一个Validate.aspx,然后在Validate.aspx.cs编写代码: using System; using System.Collections; using System.C ...

  10. JAVA集合差异

    接口 简述 实现 操作特性 成员要求 Set 成员不能重复 HashSet 外部无序地遍历成员 成员可为任意Object子类的对象,但如果覆盖了equals方法,同时注意修改hashCode方法. T ...