在介绍Cordova以前,必须先提一下PhoneGap。PhoneGap 是Nitobi软件公司2008年推出的一个框架,旨在弥补web 和iOS 之间的不足,使得web 和 iPhone SDK 之间的交互更容易。后来又加入了Android SDK 和BlackBerry SDK,再而后又陆续加入了更多的平台。 可是在2011年,Nitobi公司被Adobe收购,PhoneGap也被提交到Apache Incubator。因为Adobe如今拥有PhoneGap商标,PhoneGap v2.0版产品就改名为Apache Cordova。 听说Cordova是Nitobi团队当时坐落的街道名称,用此名来记念Nitobi团队的贡献。Apache Cordova是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。html
从下面这幅图能够看出Cordova工程的结构,以及与Native API 以前的关系。 node
官网中也把Cordova 的使用划分了一些步骤。按照这五个步骤,能够很容易的建立一个Cordova Demo 工程起来,可是实际的使用要比这个Demo 工程复杂的多。android
Cordova 命令行须要运行在 Node.js 上,在 NPM 也可用。咱们能够按照 platform specific guides 去安装别的依赖平台。所以,在安装Cordova以前,要先安装Node.js 和 NPM(能够参考文章Mac 下安装Node.js)。打开命令行提示符(Windows 下) 或者 终端 (Mac 下),而后输入 npm install -g cordova
便可安装Cordova。ios
若是安装失败,看到下面的错误提示信息,说明咱们要用管理员身份安装。web
以管理员身份安装Cordova的命令:apache
sudo npm install -g cordova
复制代码
安装过程可能比较慢,安装成功后,能够看到相似以下的目录结构,而且没有错误信息:npm
用命令行工具建立一个空的Cordova工程。首先跳转到 你但愿保存新工程的文件夹(命令是 cd 文件夹路径
),而后输入命令 cordova create 工程名
。 固然,咱们也能够直接 输入命令 cordova create 文件夹路径/工程名
,在某个文件夹下直接建立工程。 查看更多的建立工程命令,能够输入命令 cordova help create
。ubuntu
我在终端中输入以下命令:浏览器
cordova create /Users/harvey/Desktop/Other/MyApp
复制代码
而后在Other 文件夹中就建立了一个叫MyApp的文件夹: 目录结构以下:bash
建立完Cordova 工程以后,跳转到工程文件夹(命令是 cd 文件夹路径
)。 我这里使用的命令是:
cd /Users/harvey/Desktop/Other/MyApp
复制代码
而后在这个文件夹中,咱们须要添加一个 App 须要支持的平台。 添加一个平台,须要输入命令:
cordova platform add <platform name>
复制代码
例如咱们须要支持浏览器,那么就输入:
cordova platform add browser
复制代码
若是咱们须要支持iOS,那么就输入:
cordova platform add ios
复制代码
注意ios 要小写。
查看Cordova能够支持的平台,能够输入 :
cordova platform
复制代码
我输入cordova platform
以后,终端显示的结果:
HarveydeMac-mini:MyApp harvey$ cordova platform
Installed platforms:
browser 4.1.0
ios 4.2.1
Available platforms:
amazon-fireos ~3.6.3 (deprecated)
android ~5.2.0
blackberry10 ~3.8.0
firefoxos ~3.6.3
osx ~4.0.1
webos ~3.7.0
复制代码
Installed platforms
是我已经安装过的平台,Available platforms
是还能够安装的平台。
使用命令行工具,运行App的命令是:
cordova run <platform name>
复制代码
例如,我想在浏览器中运行 App,我就在终端里输入:
cordova run browser
复制代码
而后,就会打开浏览器,就会运行App。下面是个人命令和运行效果图:
固然,若是咱们想要在iOS 上运行 App,咱们也能够输入:
cordova run ios
复制代码
也能够到指定目录下打开iOS 工程文件
查看更多的关于运行App 的命令,能够输入 cordova help run
。