热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

phoneGap之Android环境搭建

PhoneGap说明PhoneGap,一早就听说有这么一个神奇的应用,它可以把WEB项目打包成各种移动平台的应用程序。这里我就研究一下,把之前开发的WebRTC项目打包成Android平台的apk文件

PhoneGap说明

PhoneGap,一早就听说有这么一个神奇的应用,它可以把WEB项目打包成各种移动平台的应用程序。这里我就研究一下,把之前开发的WebRTC项目打包成Android平台的apk文件试一下。正好公司现在比较缺少Android应用开发人员,看来web应用还是很有前景的。不过在网上看过不少评论说PhoneGap打包的程序运行比较慢,用户体验差,和native应用没的一比,这里也算是是做个小实验,自己看看到底怎么样。

PhoneGap与cordova

后面会讲到cordova,主要用这个生成项目。为了不至混淆,这里解释一下。
PhoneGap是一个用基于HTML,CSS和Javascript的,创建移动跨平台移动应用程序的快速开发平台。它使开发者能够利用iPhone,Android,Palm,Symbian,WP7,Bada和Blackberry智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等,此外PhoneGap拥有丰富的插件,可以调用。
Phonegap是一款开源的开发框架,旨在让开发者使用HTML、Javascript、CSS等Web APIs开发跨平台的移动应用程序。原本由Nitobi公司开发,现在由Adobe拥有。它需要特定平台提供的附加软件,例如iPhone的iPhone SDK,Android的Android SDK等,也可以和DW5.5及以上版本配套开发。使用PhoneGap只比为每个平台分别建立应用程序好一点点,因为虽然基本代码是一样的,但是你仍然需要为每个平台分别编译应用程序。
Cordova提供了一组设备相关的API,通过这组API,移动应用能够以Javascript访问原生的设备功能,如摄像头、麦克风等。Cordova还提供了一组统一的Javascript类库,以及为这些类库所用的设备相关的原生后台代码。Cordova支持如下移动操作系统:iOS, Android,ubunto phone os, Blackberry, Windows Phone, Palm WebOS, Bada 和 Symbian。
Cordova是贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。你可以把他想象成类似于Webkit和Google Chrome的关系。

安装JAVA和ADT

  1. 首先要安装java运行环境jdk,这个可以自行到官网下载。百度也有下载连接:( http://www.baidu.com/s?tn=baidu&ie=utf-8&f=8&wd=jdk ),这个主意要将java安装路径的bin目录加入系统或用户的环境变量path中,安装完可以在cmd命令行窗口输入java -version,看是否有反应。
  2. 然后下载ADT(Android Development Tools),这个到官网下载:(http://developer.android.com/sdk/index.html ),这个网站打开慢,下载还是比较快的。下载后解压ADT,这个里面主要包含两个文件夹,一个是装好插件的eclipse,用于开发Android应用,另外一个是android开发sdk目录。需要将sdk/platform-tools这个路径加入系统环境变量path中,为了以后调试用到adb。
  3. 下载安装ant,这个是在用phonegap的cordova工具生成android项目时,需要的编辑工具。下载地址:(http://ant.apache.org/bindownload.cgi ),安装完之后要注意,一定要在cmd命令行窗口输入 ant 命令,看是否报错。我的这个就报错:在jre目录找不到tools.jar。解决方法很简单,自己看了一下jre目录是没有,在jdk目录下lib目录有tools.jar,于是拷贝一个过去就解决了。

安装NodeJS插件

这个之前介绍过如何安装,这里就不说明了,参考:(http://www.haomou.net/2014/07/29/2014_nodejs_1/ )
接着安装pnonegap和cordova,如下:

123
npm install -g phonegap...npm install -g cordova

安装完成之后,我们就可以使用phonegap生成一个android项目文件。执行如下命令:

12345
cordova create myapp com.org.myapp "HelloWorld" cd myapp cordova platform add android  //添加android运行平台cordova build android  //编译apkcordova emulate android  //调用adb调试应用

上面的倒数第二步,cordova platform add android这个可能会报错。

1
[error] Please install Android target 17 (the Android 4.2 SDK). Make sure you have the latest Android tools installed as well.

这个主要是没有安装和当前cordova对应要求的android平台sdk,这个可以通过2种方法解决,

  1. 打开ADT,打开Android SDK manager,安装对应平台的SDK。(参考下一小节)
  2. 打开如下目录,可能其中的版本号不一,
1
C:\Users\USER_NAME\.cordova\lib\android\cordova\3.1.0\framework\project.properties

修改

1
target=android-17

可以把这个修改成你现在已安装的平Andriod台,或者想要指定的Android平台。
这个问题解决后,上面的示例项目即可生成,然后使用ADT Eclipse导入该项目即可,同意通过运行,查看在AVD中的运行效果。

Android开发平台搭建技巧

SDK无法更新可以使用翻墙或网上下载相关资源,推介使用国内的镜像,可参考:

 SDK资源-镜像    http://www.androiddevtools.cn/

技巧一:Android SDK Manager打开非常慢,总是失败。解决方法:

访问站长工具网站(http://tool.chinaz.com/ ),选择 其他工具/超级PING ,把域名dl-ssl.google.com粘贴进去,然后勾选海外的,点击查询,会列出一些可以ping通的IP地址。
使用cmd命令行ping 对应的ip地址,修改系统的host文件,具体位置在(C:\Windows\System32\drivers\etc),在最后一行增加域名解析记录:

1
74.125.206.93 dl-ssl.google.com

然后重新打开Android SDK Manager,试一下。如果不行,就换一个ip,重新修改host,总有可以的。我用的这个是英国的ip,速度还不错。
技巧二:manage AVD里面新建Android虚拟机的时候,报错:

1
No system images installed for this target

解决方法:在Android SDK Manager中下载对应平台的ARM EABI v7a System image。
技巧三:打开eclipse时,卡在Android sdk content loader 0%,解决办法:
方法1:遇到Eclipse右下角一直显示“Android sdk content loader 0%”的情况时,直接关掉Eclipse,有ADB进程在运行时通过进程管理器结束进程,然后重启Eclipse。通过这种方法多数情况下问题会得到解决。
方法2:关闭Eclipse,删掉C:\Users\用户名.android文件夹下的所有内容,再重启Eclipse。


转载:http://www.haomou.net/2014/08/06/2014_phonegap_android/
推荐阅读
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • 【Windows】实现微信双开或多开的方法及步骤详解
    本文介绍了在Windows系统下实现微信双开或多开的方法,通过安装微信电脑版、复制微信程序启动路径、修改文本文件为bat文件等步骤,实现同时登录两个或多个微信的效果。相比于使用虚拟机的方法,本方法更简单易行,适用于任何电脑,并且不会消耗过多系统资源。详细步骤和原理解释请参考本文内容。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文介绍了关于apache、phpmyadmin、mysql、php、emacs、path等知识点,以及如何搭建php环境。文章提供了详细的安装步骤和所需软件列表,希望能帮助读者解决与LAMP相关的技术问题。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
  • 本文介绍了在Windows系统下安装Python、setuptools、pip和virtualenv的步骤,以及安装过程中需要注意的事项。详细介绍了Python2.7.4和Python3.3.2的安装路径,以及如何使用easy_install安装setuptools。同时提醒用户在安装完setuptools后,需要继续安装pip,并注意不要将Python的目录添加到系统的环境变量中。最后,还介绍了通过下载ez_setup.py来安装setuptools的方法。 ... [详细]
  • DSP中cmd文件的命令文件组成及其作用
    本文介绍了DSP中cmd文件的命令文件的组成和作用,包括链接器配置文件的存放链接器配置信息、命令文件的组成、MEMORY和SECTIONS两个伪指令的使用、CMD分配ROM和RAM空间的目的以及MEMORY指定芯片的ROM和RAM大小和划分区间的方法。同时强调了根据不同芯片进行修改的必要性,以适应不同芯片的存储用户程序的需求。 ... [详细]
  • 本文介绍了Windows Vista操作系统中的用户账户保护功能,该功能是为了增强系统的安全性而设计的。通过对Vista测试版的体验,可以看到系统在安全性方面的进步。该功能的引入,为用户的账户安全提供了更好的保障。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • 本文介绍了Swing组件的用法,重点讲解了图标接口的定义和创建方法。图标接口用来将图标与各种组件相关联,可以是简单的绘画或使用磁盘上的GIF格式图像。文章详细介绍了图标接口的属性和绘制方法,并给出了一个菱形图标的实现示例。该示例可以配置图标的尺寸、颜色和填充状态。 ... [详细]
author-avatar
小明爱微笑_401
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有