大部分从phonegap的官方API翻译而来,还有一些自己安装时碰到的问题,及解决之道。
1、安装cordova (首先安装node.js,通过node.js安装)
npm install -g cordova(linux环境下sudo ..)如果因为GFW而安装不成功,则可使用代理安装
npm –proxy http://127.0.0.1:8087 install -g cordova
-g表明npm安装是全局的安装,如果-g不成功,则需要将npm目录添加到PATH下(C:\Users\username\AppData\Roaming\npm)
2、创建工程
在工作空间的目录下,输入 cordova create hello com.example.hello HelloWorld
hello为工程名,com.example.hello为widget的id,如果不设置缺省为io.cordova.hellocordova,这个值在以后会用到,例如java包的名称。HelloWorld为widget的name,缺省值为HelloCordova,应用显示的名称为此值。(config文件下可发现,widget是什么?)
工程目录下www目录,是资源目录包含着css,js,img。
config.xml包含着一些重要的产生和描述应用的元数据。
其它文件都为空。
3、为工程添加平台
cd hello
cordova platform add android(ios......)
cordova platforms ls(查看自己所添加的平台)
cordova platform remove android
添加一个平台,在工程的platforms的目录下增加一个平台的目录。
而www目录将在platforms/android/assets/www下再出现,系统会不断的从主目录下www中不断的复制文件,所以修改文件时只需要修改主目录下的www中的文件,而不需要修改各个平台下的www中的文件。
最好不要修改/platforms/下的文件,因为/platforms/下的文件将会被覆盖,准备安装或者重新安装插件时。
主页默认是www/index.html。这个可以自己修改,但是修改后的页面必须有deviceready的事情处理,例如www/js/index.js下的事件处理。
4、创建app
cordova build android(...)
cordova prepare android
cordova compile android
可使用android或者其它系统的SDK修改或者编译platforms/android下的代码
5、在模拟器下或者设备下测试App
cordova emulate android
cordova run android
6、添加插件
plugin提供了与原生的组件的接口,由社区提供。
搜索接口
cordova plugin search bar
cordova plugin search bar code(相当于两个关键字联合搜索)
插件的安装
cordova plugin add org.apache.cordova.device(Device API)
web开发环境,插件会安装到相应的平台下,原生的开发环境需要通过Plugman来安装
查看安装过的plugin
cordova plugin ls(list)
移除安装过的插件
cordova plugin rm(remove) org.apache.cordova.device
高级plugin安装
1、通过版本号安装
cordova plugin add org.apache.cordova.console@0.2.1
cordova plugin add org.apache.cordova.console@latest
2、安装未在registry.phonegap.com注册的plugin,可通过URL安装
cordova plugin add https://github.com/apache/cordova-plugin-console.git#r0.2.0
cordova plugin add https://github.com/someone/aplugin.git#:/my/sub/dir(如果在子目录,:加目录名)
cordova plugin add ../my_plugin_dir(本地文件相对于plugin.xml的位置)
通过merges文件夹来定制不同的平台。
想实现一个android的特殊的效果,如果只是修改android下的css文件,则会被主目录www下的文件覆盖,可
通过merges文件来实现。例如:
index.html下引入一个css
<link rel="stylesheet" type="text/css" href="css/overrides.css" />
在merges/android,下新建overrides.css,即可。css/下需要建一个overrides.css的空文件。
更新cordova
npm update -g cordova
npm install -g cordova@3.1.0-0.2.0(安装具体的版本)
通过npm -v查看具体的版本