最早接触PhoneGap平台是在1年多之前,可以使用HTML、CSS和JavaScript跨平台来编写Android或者IOS设备程序。而且应用的核心代码不须要多少改动就行移植。确实让我感觉的到它应该是未来移动设备开发的趋势。

Web程序猿,特别是前端程序猿,可以轻松的通过Web技术来编写移动设备软件。

可是当时给我带来的感觉是应用的响应速度太慢,提供的API不全。可以实现的功能不多。PhoneGap经过1年多的沉淀。现在过头再来看PhoneGap,它又是什么样的呢?有哪些进步呢?

Cordova是什么?

Apache Cordova是PhoneGap贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。

Cordova是一个设备API的集合,它同意手机开发人员通过JavaScript去訪问设备原生功能,比如相机。重力感应等。

结合UI框架,比如jQuery Mobile,Dojo Mobile或者Sencha Touch。能够让开发人员通过HTML,CSS和JavaScript开发手机应用。

当使用Cordova的API时,应用能够在没有不论什么原生代码(Java。Object-C等)的情况下构建。而且,尽管使用着Web开发技术。可是该应用却是在本机执行,而不是远程的Web应用)。

而且由于提供的JavaScript的API在多个设备平台都保持一致性而且基于web标准,所以,应用能够在差点儿没有不论什么改动的情况下应用到各个不同的设备平台。

使用Cordova开发的应用仍然是使用平台的SDK打包,能够放置到每一个设备平台的应用商店中。

Cordova提供了一套统一的JavaScript库,其背后使用平台相应的代码来驱动设备。Cordova支持的平台有:IOS。Android,Blackberry。Windows Phone。Palm WebOS。Bada和Symbian。

怎样開始Cordova编程?

1.下载并安装node.js(假设你已经安装过,就不用了)

http://nodejs.org/

2.安装Cordova

1
sudo npm install -g cordova

3.创建应用程序

1
cordova create hello com.example.hello HelloWorld

4.加入应用平台

这里加入的是Android应用程序

你可能会得到例如以下信息:

Error: ERROR : executing command ‘ant’, make sure you have ant installed and added to your path.

说明你须要安装ant,方法例如以下:

1
2
brew update
brew install ant

然后加入应用平台

1
cd hello

首先进入到hello文件夹下

1
cordova platform add android

这里也能够删除一个应用平台

1
cordova platform rm android

通过ls命令

1
cordova platforms ls

能够查看你安装关于平台的信息,比如。我的是:

Installed platforms: android 3.3.0

Available platforms: blackberry10, firefoxos, ios

5.构建应用程序

在进行构建之前,先确保你的Android SDK配置好了。

须要下载Android的SDK,并设置Path到系统路径下。

安装Android SDK(Mac平台。下载解压缩即可)

配置SDK的Path到系统路径

1
touch ~/.bash_profile; open ~/.bash_profile

在profile文件里加一句话:

export PATH=${PATH}:/Users/twer/Downloads/adt-bundle-mac-x86_64-20131030/sdk/platform-tools:/Users/twer/Downloads/adt-bundle-mac-x86_64-20131030/sdk/tools

记得要指定你自己的路径。

最后还要运行profile将它更新到你的系统path下。

1
source ~/.bash_profile

然后你就能够開始构建了:

1
cordova build

当然你也能够正对某一个平台构建:

1
cordova build android

6.在模拟器上执行

1
cordova emulate android

此时,模拟器会启动。并自己主动安装应用,效果应该例如以下:

7.实体机上执行

将你的设备插到电脑上,然后执行命令:

1
cordova run android

应用程序将被安装到你的手机。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

Cordova探险系列(一个)的更多相关文章

  1. Cordova探险系列(三)

    自从3.0之后.Cordova默认是关闭全部关于设备原生特性功能的,所以我们要通过加入插件来启动原生特性. 这里以Accelerometer(加速度感应器)为例,来学习怎样使用设备原生特性. 1.加入 ...

  2. Cordova入门系列(二)分析第一个helloworld项目 转发 https://www.cnblogs.com/lishuxue/p/6015420.html

    Cordova入门系列(二)分析第一个helloworld项目   版权声明:本文为博主原创文章,转载请注明出处 上一章我们介绍了如何创建一个cordova android项目,这章我们介绍一下创建的 ...

  3. Cordova入门系列(三)Cordova插件调用 转发 https://www.cnblogs.com/lishuxue/p/6018416.html

    Cordova入门系列(三)Cordova插件调用   版权声明:本文为博主原创文章,转载请注明出处 上一章我们介绍了cordova android项目是如何运行的,这一章我们介绍cordova的核心 ...

  4. Cordova入门系列(四)自定义Cordova插件--showToast

    前三篇Cordova入门系列,简单讲解了Cordova,以及如何调用Cordova插件,今天我们讲解一下如何自己做一个插件. 自定义插件,就是自己写一些安卓java代码,然后和js代码以及配置文件,封 ...

  5. Cordova入门系列(一)创建项目 转发 https://www.cnblogs.com/lishuxue/p/6008678.html

    版权声明:本文为博主原创文章,转载请注明出处 Cordova是什么? 初学Cordova的人,虽然了解一点点,知道Cordova是用来将html, css, js变成app的,但并不知道到底是怎么用的 ...

  6. Cordova入门系列(一)创建项目

    Cordova是什么? 初学Cordova的人,虽然了解一点点,知道Cordova是用来将html, css, js变成app的,但并不知道到底是怎么用的,原理是什么.经常会有这样的困惑: 它是一个可 ...

  7. Cordova入门系列(二)分析第一个helloworld项目

    版权声明:本文为博主原创文章,转载请注明出处 上一章我们介绍了如何创建一个cordova android项目,这章我们介绍一下创建的那个helloworld项目的代码,分析其运行. MainActiv ...

  8. Cordova入门系列(三)Cordova插件调用

    版权声明:本文为博主原创文章,转载请注明出处 上一章我们介绍了cordova android项目是如何运行的,这一章我们介绍cordova的核心内容,插件的调用.演示一个例子,通过cordova插件, ...

  9. MVC系列——一个异常消息传递引发的思考

    前言:最近在某个项目里面遇到一个有点纠结的小问题,经过半天时间的思索和尝试,问题得到解决.在此记录一下解决的过程,以及解决问题的过程中对.net里面MVC异常处理的思考.都是些老生常谈的问题,不多说, ...

随机推荐

  1. Nlog配置文件

    <?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nl ...

  2. linux开机启动服务和chkconfig使用方法(转)

    每个被chkconfig 管理的服务需要在对应的/etc/rc.d/init.d 下的脚本加上两行或者更多行的注释. 第一行告诉 chkconfig 缺省启动的运行级以及启动和停止的优先级.如果某服务 ...

  3. (转)JAVA 调用Web Service的三种方法

    1.使用HttpClient用到的jar文件:commons-httpclient-3.1.jar方法:预先定义好Soap请求数据,可以借助于XMLSpy Professional软件来做这一步生成. ...

  4. Android DES加密的CBC模式加密解密和ECB模式加密解密

    DES加密共有四种模式:电子密码本模式(ECB).加密分组链接模式(CBC).加密反馈模式(CFB)和输出反馈模式(OFB). CBC模式加密: import java.security.Key; i ...

  5. 算法战斗:给定一个号码与通配符问号W,问号代表一个随机数字。 给定的整数,得到X,和W它具有相同的长度。 问:多少整数协议W的形式和的比率X大?

    如果说: 给定一个号码与通配符问号W,问号代表一个随机数字. 给定的整数,得到X,和W它具有相同的长度. 问:多少整数协议W的形式和的比率X大? 进格公式 数据的多组,两排各数据的,W,第二行是X.它 ...

  6. Connecting Docker for Cloud Services using SDN and Network Virtualization

     Abstract The explosive scale of container CPUs needs highly efficient network virtualization Chal ...

  7. 于iOS跳转到应用程序AppStore

    1.找到应用程序的叙述原文链接,实例: https://57324.api-01.com/serve? action=click&publisher_id=57324&site_id= ...

  8. Linux注意到Makefile

    规则: 目标 : 依靠 命令 make是怎样工作的: (1)make在当前文件夹下寻找makefile或Makefile. (2)假设找到,他会寻找文件里的第一个目标文件(target).并把这个文件 ...

  9. 设单链表中存放n个字符,试设计一个算法,使用栈推断该字符串是否中心对称

    转载请注明出处:http://blog.csdn.net/u012860063 问题:设单链表中存放n个字符.试设计一个算法,使用栈推断该字符串是否中心对称,如xyzzyx即为中心对称字符串. 代码例 ...

  10. 为什么tap事件绑定在document上,而不是对象本身上

    1.在移动端前端开发,click事件有300ms的延时,为了提升用户体验,快速响应.zepto添加了tap事件.tap是在手指触屏横纵向移动距离小于30px,触发tap事件.移动距离的判断是通过tou ...