Cordova webapp实战开发:(4)Android环境搭建
在《Cordova webapp实战开发:(3)后面可能会学到的东西》中我们说了一下后续大致包括的内容,今天我们继续。上周我在掌中广材集成了友盟的社交分享,今天想集成iOS应该很顺利的,但是只要一加入libSocialQQ.a就错。我对iOS也不太熟,没找到原因,头晕了,写一篇博客权当休息一下。今天我们就来搭建一下Android环境,并编写一个hello world吧。准备好了吗?Web app开发旅程即将正式开始了.......
JAVA环境
- 安装JAVA JDK
- 打开我的电脑--属性--高级--环境变量
- 新建系统变量JAVA_HOME,变量名:JAVA_HOME ,变量值:C:\Program Files\Java\jdk1.7.0
- 新建系统变量CLASSPATH,变量名:CLASSPATH ,变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
- 选择“系统变量”中变量名为“Path”的环境变量,双击该变量,在原来变量后追加 ;%JAVA_HOME%\bin
- 现在测试环境变量的配置成功与否。在DOS命令行窗口输入“JAVAC”,输出帮助信息即为配置正确。如图:

Android环境
1. 下载Andorid SDK以及Eclipse
如果你想通过Eclipse来开发Andorid应用程序,在你配置好了JDK变量环境之后可以安装Eclipse之后下载Android SDK(Software Development Kit)并在Eclipse中安装ADT插件,这个插件能让Eclipse和Android SDK关联起来。为了更加方便,在Andorid SDK下载中会包括SDK以及一个可以直接使用的Eclipse。
写blog,我不能保证文章的内容在以后也能使用,包括下载地址和链接,但我既然写了,就要有责任保证现在的是能用的。以前下载地址是在Android SDK,大家可以根据自己的系统选择相应的系统版本下载。不过
今天我写这篇文章的时,不知是我网络原因还是其他的,总之不能访问,所以我在我的百度网盘放了一个之前下载的SDK压缩包,大家可前往下载:http://pan.baidu.com/s/1gdgur2j。下载完后,我把这个压缩包解压到E:\dev-tools\adt-bundle-windows-x86_64-20140321(你可以自己随便放在哪个盘符)
2. 环境变量的配置
在JAVA环境配置中,我们做了一步环境变量的配置,对于android的开发人员来说,我们首先要做的也是环境变量的配置。
打开我的电脑--属性--高级--环境变量
- 新建系统变量ANDROID_HOME,变量名:ANDROID_HOME,变量值:E:\dev-tools\adt-bundle-windows-x86_64-20140321\sdk
- 选择“系统变量”中变量名为“Path”的环境变量,双击该变量,在原来变量后追加 ;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools
- 现在测试环境变量的配置成功与否。在DOS命令行窗口输入“adb”,输出帮助信息即为配置正确。如图:

Cordova环境
在Apache Cordova官网上有明确的建立步骤,具体说明在 The Command-Line Interface 中。
- 安装NodeJS

- 下载安装一个 git客户端
Window下行执行命令行:
npm install -g cordova
Mac下执行命令行
$ sudo npm install -g cordova
我现在的电脑已经存在Cordova项目,但是安装环境却没有了。为了写这篇文字,我又重新安装cordova,在命令行下输入

同样,仍旧非常慢,别急,耐心点,不要中断执行,出去跑5公里之后再回来看看是否安装成功了。本来这篇博文是昨天发布的,只是这一步一直未完成,今天一大早又再试了试,很快就完成了。
安装成功的样子是这样的:
如果你真的很着急,就要明白下载慢的原因了。下载慢是因为源的问题,如果等不及可以使用其它源。我看在PhoneGap App开发QQ群(348192525
)中有人介绍了通过更改下载源可以解决,如果你知道的话,可以在本文回复一下,与大家分享一下。
敏捷个人,快乐、平衡、高效
下面我们来做一个Hello world示例
1. 新建一个项目,执行命令行 cordova create agileme cn.zhoujingen.agileme AgileMe , 如果安装有问题可以后面加上 –d启动查看执行详细信息。下载类库时间有点长,我大概等了10几分钟吧,你也耐心点,不要中断执行。我第一次就是因为不想等了,然后中断,导致后面步骤失败,不得已删除下载的类库目录文件再次执行此步骤

error:please install android target: "android-22".

老老实实打开Andorid SDK Manager下载最新Tools吧

不过要用代理才能下,算了,我直接用我以前做的代码做了一个Demo源码打包,使用的是Cordova3.几的版本。Andorid示例下载地址:webapptest.zip
如果你要下载,那就按这个设置,目前是可行,以后这个代理是否可用就不知道了。

至于如何使用Eclipse导入项目我就不说了,不知道的就网上找找,或者在群里问问大家吧

你可以在虚机上运行,

、
不过Andorid虚机很慢,我一般连接真机测试机

直接按运行,选择Andorid Application后,就会显示出主界面了

如果你看到这个界面了,恭喜你,你的成功迈进了一步。
如果看文字有点累,那就看看咱们群里人录制的视频吧。
预习作业
第一次写一步一步的,感觉自己是不是写的太简单了
- 下载Cordova自带的notication插件,跑一跑
- 自己做一个获得App大小版本号的插件
PhoneGap App开发 477842664
Cordova webapp实战开发:(4)Android环境搭建的更多相关文章
- Cordova webapp实战开发:(5)如何写一个Andorid下自动更新的插件?
在 <Cordova webapp实战开发:(4)Android环境搭建>中我们搭建好了开发环境,也给大家布置了调用插件的预习作业,做得如何了呢?今天我们来学一下如何自己从头建立一个And ...
- Cordova webapp实战开发:(3)后面可能会学到的东西
在<Cordova webapp实战开发:(2)认识一下Cordova>中我们了解了Cordova和Phonegap的关系,并简要介绍了一下它的架构,以及多平台性,并给大家留了一些作业.我 ...
- Cordova webapp实战开发:(2)认识一下Cordova
昨天写了第一篇 <Cordova webapp实战开发:(1)为什么选择 Cordova webapp?>,意料中看到大家对这个主题的兴趣,我新建的PhoneGap App开发 34819 ...
- Cordova webapp实战开发:(7)如何通过简单的方法做到,不重新发布APP来修复bug、增加功能、或者躲开苹果的一些严格审核?
到<Cordova webapp实战开发:(6)如何写一个iOS下获取APP版本号的插件?>为止,我们已经大体学会了如何使用Cordova了,那些都是使用Cordova的开发者必备的技能. ...
- Cordova webapp实战开发:(1)为什么选择 Cordova webapp?
很长时间没有专注写代码了,即使写点代码也主要是写写敏捷个人app,这个App主体内容是我用了一周的时间,使用PhoneGap+JQueryMobile搭建的,之所以会比较快的完成,是因为11年我在做建 ...
- Cordova webapp实战开发(20161207 )
http://www.cnblogs.com/zhoujg/archive/2015/05/28/4534932.html 1.https://www.jetbrains.com/idea/downl ...
- Cordova webapp实战开发:(6)如何写一个iOS下获取APP版本号的插件?
上一篇我们学习了如何写一个Andorid下自动更新的插件,我想还有一部分看本系列blog的开发人员希望学习在iOS下如何做插件的吧,那么今天你就可以来看看这篇文字了. 本次练习你能学到的 学习如何获取 ...
- golang开发android环境搭建_window
golang开发android环境搭建介绍 一 安装依赖软件: git:版本管理 go: go开发环境(版本>=1.5),可直接下载window版的go安装包. android studio: ...
- paip.android环境搭建与开发事例
paip.android环境搭建与开发事例 好长时间没有玩AndROID了..以前常常做ANDROID的,今天决定在下载一个要做个时间设置器 作者Attilax , EMAIL:1466519819 ...
随机推荐
- 【leetcode】Merge Two Sorted Lists
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing t ...
- 实现IBatisNet的Dialect分页
Hibernate有其独有的Dialect,对不同的数据库实现sql的分页. 用过MyBatis for Java,它可以拦截SQL语句,通过Interceptor对原始的sql语句进行修改,也就是可 ...
- Linux计划任务crontab运行脚本不正确的问题
问题的由来 写好的程序希望在崩溃之后能够自启动,于是利用linux的crontab功能,添加一个计划任务,每分钟执行一个脚本查看需要监控的进程是否还在,如果不在则启动之,否则不做任何事情.这么一个简单 ...
- Android度量单位说明(DIP,DP,PX,SP) (转帖)
(一)概念 dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA.HVGA和QVGA 推荐使用这个,不 ...
- 算法:POJ1006 三重峰值问题
这题有直接套公式的解法 这里提供一个O(n)的解法. package practice; import java.io.BufferedInputStream; import java.util.Sc ...
- 如何自行处理写好的eclipse插件安装不生效
本帖最后由 anrainie 于 2013-7-23 11:31 编辑 对于eclipse插件开发的新手,经常会遇到插件写好了,拷贝到plugins或dropins文件下,但是没有生效.上网各种问,也 ...
- JAVA RMI例子
RMI 是java语言的一个RPC框架,本文给出基础例子如下: 1.实现接口: public interface ICalc extends Remote { public int add(int p ...
- 基于正则的INI读写工具类,支持加密解密
看到这个标题,有人会问,现在都用xml做配置文件了,谁还用INI文件啊!下面来简单对比一下xml和ini: 1.XML功能强大表达能力强,同时扩展性好. 2.它的主要优势是异构平台的整合.通讯. 3. ...
- C# Lambda表达式详解,及Lambda表达式树的创建
最近由于项目需要,刚刚学完了Action委托和Func<T>委托,发现学完了委托就必须学习lambda表达式,委托和Lambda表达式联合起来,才能充分的体现委托的便利.才能使代码更加简介 ...
- iOS——Core Animation 知识摘抄(三)
原文地址:http://www.cocoachina.com/ios/20150105/10827.html CAShapeLayer CAShapeLayer是一个通过矢量图形而不是bitmap来绘 ...