新手的第一个phonegap Android应用
对PhoneGap开发感兴趣的请加入群 PhoneGap App开发 348192525 
手机成为现在软件应用必不可少的一种设备,然而手机平台的不统一造成我们需要为不同手机重写代码,这对一般应用来说也许称得上是一种浪费,那有没有可以只写一套代码就能在不同手机上使用呢?今天准备开始做一个phonegap应用学习一下。
下面我将简要的介绍编写过程,如果你也不是初学者,那么就忽略这篇文章:)
phonegap介绍
官方网址:http://phonegap.com
08年一次ios开发者大会上来自Nitobi软件公司的几个家伙突发奇想,提出一个想法,想做一个工具来弥补web和ios开发之间的不足,并提出 Bridging the gap between the web and the iPhone sdk。一开始的目标并不是很大,但是做到了现在的 written once,run everywhere。我们很多人做事其实也应该这样,一开始不要把目标弄得那么大,跳一步能够上就好,这也是敏捷个人制定目标的一个原则。如果一下子目标太大,你会因为难以实现而给自己找理由,这样到头来你什么都没有。
09年他们推出android adk和blackberry sdk,成了移动开发者的福音,就连ibm也加入进来。phonegap继续成长,在11年10月,整个Nitobi团队被adobe收购,随后adobe把 phonegap送给了apache软件基金会,接着apache把phonegap改名为cordova,cordova是Nitobi团队当时坐落的街道名称,用此名来纪念Nitobi团队的贡献。
PhoneGap是一款开源的手机应用开发平台,它仅仅只用HTML和JavaScript语言就可以制作出能在多个移动设备上运行的应用。 PhoneGap将移动设备本身提供的复杂的API进行了抽象和简化,提供了一系列丰富的API供开发者调用,只要你会HTML和Javascript或 者Java语言,就可以利用PhoneGap提供的API去调用各种功能,制作出在各种手机平台(iPhone,Android ,BlackBerry,Symbian,Palm,Window Phone)上运行的应用。目前phonegap获得Apple,IBM,NOKIA,palm等众多公司的支持。简单来说使用PhoneGap就是使用HTML,JavaScript和CSS来开发程序,最终通过PhoneGap可以产生对应版本的native 程序。


谁在使用PhoneGap










支持平台

Apache Cordova框架
2011年10月,Adobe收购了Nitobi Software和它的PhoneGap产品,然后宣布这个移动开发框架将会继续开源,并把它提交到Apache Incubator,以便完全接受ASF的管治。PhoneGap的项目主管Brian LeRoux指出开源PhoneGap的决定在Adobe收购Nitobi之前就做出了,由于Adobe现在拥有PhoneGap商标,他们不得不换个名 字。第一个选中的名字是Callback,毫无创意,因此再改一次,产品现在叫Apache Cordova。Apache Cordova是PhoneGap贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎,你可以把他想象成类似于Webkit和Google Chrome的关系。

Cordova supports Android 2.2, 2.3, and 4.x.
------------------------------------
以下使用cordova-3.1.0
准备
- 安装JAVA JDK
- 安装Eclipse
- 安装Android SDK,根据自己的系统选择相应的系统版本下载,下载解压或安装后运行SDK Manager.exe , 下载4.2 SDK,否则后续不能使用命令行创建项目
- 安装ADT。选择eclipse菜单Help下的【install New Software】,输入https://dl-ssl.google.com/android/eclipse/

- 安装NodeJS

命令行执行npm install -g cordova
这一步我安装不成功,返回错误.根据错误log中的一些字搜索了一下关键字npm ERR! node_modules\npm\node_modules\npm-registry-client\lib\request.js:238:23) ,网上说有是代理服务器的问题,我也不懂,猜可能是权限问题,于是试试网页访问https://github.com 后登录再安装试试,竟然好了,原因不明.
- 新建一个项目,执行命令行 cordova create yw com.glodon.yw YW , 如果安装有问题可以后面加上 –d启动查看执行详细信息。下载类库时间有点长,我大概等了10几分钟吧,你也耐心点,不要中断执行。我第一次就是因为不想等了,然后中断,导致后面步骤失败,不得已删除下载的类库目录文件再次执行此步骤

- cd yw 后,执行cordova platform add android显示我没有安装4.2 SDK,难道现在的cordova版本支持最低是4.2?先不管了,返回第3步骤执行下载4.2 SDK。这个步骤一开始也需要下载类库,再等等,这个时间比上面的时间短一些:)


新建一个模拟器,然后执行cordova emulate android 则可打开模拟器。

- build项目:
cordova build - 增加插件:
cordova plugin add org.apache.cordova.camera //摄像头cordova plugin add org.apache.cordova.dialogs //通知、震动cordova plugin add org.apache.cordova.vibration 你可以在Eclipse中新建一个Android项目,然后选择从已有代码中新建,选择前面命令行新建的目录。之后就可以在Eclipse中去工作了。
使用二维码插件
想在项目中使用二维码扫描,找了一下,发现已经有这个插件,地址:https://github.com/wildabeast/BarcodeScanner ,按照它的readme,网上也找了很长时间的使用说明,但是因为框架插件机制更改,找到的都是代码片段,始终不能运行。于是看了一下源码,终于搞定,下面把使用说明简单说一下,这样新手们可以不用像我这样走弯路了。
- 在https://github.com/wildabeast/BarcodeScanner 下载插件代码

- 从已有代码新建一个项目,选择android目录

- 在项目的属性页 的【android】页签勾选【is library】,在Reference中【add】前面假的CaptureActivity项目

- 把插件代码文件\src\android\com\phonegap\plugins\barcodescanner\BarcodeScanner.java 加入到项目中

- 更改config.xml

- 把源码中的www\barcodescanner.js 文件加入到 asserts\www下,但需要更改一下代码

- 在页面调用二维码扫描功能

我是phonegap 新手,初来乍到,上面有不对的地方请多指教。
转载于:http://www.zhoujingen.cn/blog/aboutme
新手的第一个phonegap Android应用的更多相关文章
- 【转】基于第一个PhoneGap(cordova)的应用详解
PhoneGap是一套能让你使用HTML5轻松调用本地API接口和发布应用到商店的应用开发平台.官方说有低成本,低开发周期,轻量化等优点,这些咱暂时也没法证明,略过不表.但是有一条跨平台,却是很明显的 ...
- PhoneGap Android环境搭建
原文地址:http://www.cnblogs.com/shawn-xie/archive/2012/08/15/2638480.html 一.安装 在安装PhoneGap开发环境之前,需要按顺序安装 ...
- phonegap android 输入法弹出会遮盖表单框的解决办法
phonegap android 当页面内容比较多,表单超出屏幕范围时,点击输入,输入法会遮盖住表单框,而且无法向上滑动. 经过测试发现,是由于config.xml中设置了 FullScreen 的全 ...
- 招聘:有兴趣做一个与Android对等的操作系统么?
招聘:有兴趣做一个与Android对等的操作系统么? 前不久我发了一篇<八一八招聘的那些事儿>讲了我自己作为求职者对招聘的一些看法.那个时候我还在求职,对求职的结果还是挺满意的,五家公司面 ...
- 开源自己的一个小android项目(美女撕衣服游戏)
这是自己的一个开源自己的一个小android项目(美女撕衣服游戏),也是前6个月开发的,有部分的资源来自网络上的,现在开源出来给大家吧,由于源码比较大,不上传了,我已经上传到源码天堂那个网站那里了,大 ...
- 【Android Studio探索之路系列】之中的一个:Android Studio开篇
作者:郭孝星 微博:郭孝星的新浪微博 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.co ...
- 一个三年Android开发的总结-开篇
一个三年Android开发的总结-开篇 转眼间全职从事Android开发已有三年,想把这一阶段的积累总结记录并展现出来,作为Android开发必备的知识,希望对有一定Android开发基础的人进阶有裨 ...
- Androng,一个针对Android的Pong克隆
下载application from Android market 下载source - 532 KB 内容 IntroductionAndroid游戏开发 活动视图绘图使用CanvasAnimati ...
- Android开发新手学习总结(一)——使用Android Studio搭建Android集成开发环境
[新手连载]一:使用Android Studio搭建Android集成开发环境http://bbs.itcast.cn/forum.php?mod=viewthread&tid=87055&a ...
随机推荐
- ASP.NET MVC3 Model验证总结
ASP.NET MVC3中的Model是自验证的,这是通过.NET4的System.ComponentModel.DataAnnotations命名空间完成的. 我们要做的只是给Model类的各属性加 ...
- oracle for loop循环以及游标循环
1. for in loop形式 DECLARE CURSOR c_sal IS SELECT employee_id, first_name || last_name ename, salar ...
- 排序陷阱 List.Sort Linq.OrderBy
部分内容摘自:http://www.th7.cn/Program/net/201511/692766.shtml C#框架里面主要提供了两种排序方式:Array.Sort Linq.Orderby. ...
- CSS自适应布局(包括两边宽度固定中间宽度自适应与中间宽度固定两边宽度自适应)
1.两边宽度固定,中间宽度自适应 (1)非CSS3布局,浮动定位都可以(以下用浮动) css样式: #left { float: left;width: 200px; background: lime ...
- jQuery .css color 重写 :hover样式没了
$("#quickSqlDiv a").css({"color":"red"}); $("#course a").css ...
- Debian 8下vsftpd安装与配置
Debian 8下vsftpd安装与配置 0.环境 root@remote:/# uname -r 3.16.0-4-amd64 root@remote:/e# lsb_release No LSB ...
- C#中SQL Server数据库连接池使用及连接字符串部分关键字使用说明
(1) 数据库的连接使用后,必须采用close()连接等效的方法关闭连接.只有关闭后,连接才能进入连接池. 参见微软的使用连接池说明:https://msdn.microsoft.com/zh-cn/ ...
- 复星昆仲杨光:VR行业四大痛点
2016年,可是说是VR产业的爆发之年,从公司层面到资本层面都对VR产业给予了厚望,期望其能够在移动互联网之后带来革命性的突破,掀起新一轮技术主导的商业革命.而创业者们已经跃跃欲试,期望在资本的支持下 ...
- Windows 8.1 应用开发文章汇总
Windows 8.1 应用再出发 - C# + XAML 1. Windows 8.1 应用再出发 - 创建我的第一个应用 2. Windows 8.1 应用再出发 - 几种常用控件 3. Win ...
- 转行IT行业的心路历程2
2011/07-2016/12 11年毕业之后阴差阳错的到了宁波慈星股份,学习了针织机械.当初的想法很简单从沈阳到南方,因为南方小厂多机会多,因为我的目标就是当老板(呵呵,大部分的人的目标都是吧,现在 ...