cordova框架的简单研究
现在比较流行使用html5 开发移动应用,毕竟只要写一套html页面就可以适配各种移动设备,大大节省了跨平台应用的开发时间。而不像以前一样Android 要写一套程序,iOS 要写一套,甚至Windows Phone 还要再写一套程序。但由于系统的差异,还是有些不便,或者说不是那么统一。这时我们可以借助Cordova 来开发H5跨平台应用。
一 Cordova介绍
1 Cordova提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript 访问原生的设备功能,如摄像头、麦克风等。
2 Cordova还提供了一组统一的JavaScript 类库,以及为这些类库所用的设备相关的原生后台代码。
3 Cordova支持如下移动操作系统:iOS, Android,ubuntu phone os等
二 环境搭建
1 安装Node.js :主要是需要用来下载和安装Cordova
下载地址:https://nodejs.org
将mac -64 bit下载下来的pkg文件运行安装即可。
安装完成后 在终端运行npm -v,如果出现版本号则说明Node.js 安装成功
2 安装Cordova CLI
输入命令 sudo npm install -g cordova
这个过程安装的有点耗时 ,一点要有耐心,运行结果如下
3 测试下Cordova是否安装成功
输入命令 cordova -v
如果出现版本号说明安装成功 ,如果不成功 请重新来.
三 创建一个iOS项目
1 在终端中运行cd命令进入创建项目工程的目录位置
比如我 先创建一个目标文件夹cordova 然后cd 到 该目录
cd /Users/wang/Documents/demos/cordova
2 运行如下命令创建工程项目
cordova create helloTest com.example.hello HelloTest
参数说明:
第一个参数helloTest 为工程的文件夹名;
第二个参数(可选)com.example.hello 为应用程序的id名,与Xcode中类似,可以在config.xml 中修改,如果不指定的话默认为io.cordova.hellocordova;
第三个参数(可选)HelloTest 为App显示的名称,也可在config.xml 中修改。
运行后cordova 文件夹会多出如下文件
目录文件说明:
conig.xml :cordova的配置文件
hooks/ :存放自定义cordova命令的脚本文件。
platforms/ :各个平台原生工程代码,会在build时被覆盖勿修改
plugins/ :插件目录(主要是提供各个平台的原生API)
www/ :用H5编写的源代码目录,build时会被放入各个平台的assets\www目录。
www/index.html :App入口html文件
3 添加iOS平台支持
(1)进入工程目录
cd helloTest
(2)添加iOS平台文件
cordova platform add ios
(3)执行完毕后可以看到在platforms文件夹下已经创建了个iOS工程
四 工程的编译、运行
打开xcworkspace 目录如下
(1) 如果在Xcode编译运行的话,使用的是Staging下面的html页面。所以我们可以把外面的www文件夹和config.xml从工程中移除(上图红框标注的),只编辑使用Staging文件夹下的html文件,但不建议这么做。
因为每次Cordova编译的时候,或者更新工程、安装插件时都会重新把红框里的文件覆盖到各个平台下的文件(绿色框标注的)。同时只编辑单个平台工程文件夹下的html页面,也不符合一次编写,同时编译发布多平台的跨平台应用开发思想。
(2)所以一般我都是编辑外面的(红框标注)www文件夹里的页面,然后运行如下命令重新build 工程,这些页面就会自动覆盖到各个平台下对应目录下。
cordova build
运行结果
小结
这是最初的尝试了解研究cordova 框架 以后有新的研究会分享给大家.