對于WebApp我是拒絕的,但存在即價值,學習總結吧.(關鍵是boss讓用,老項目也是這么開發(fā)的??)
Cordova與PhoneGap的淵源大家可以自行搜索查看,兩者之間大約相等.
總之現(xiàn)在用Cordova就是了.
??快速開始
- 安裝
sudo npm install -g cordova
. 依賴于node.js.(npm 是node.js packets manager)
- 創(chuàng)建項目,cordova create <path>. 例如
cordova create ./CordovaApp
- 進入項目文件夾,添加開發(fā)平臺.可以使用
cordova platform
查看支持的平臺列表cd CordovaApp
- 添加開發(fā)平臺cordova platform add <platform name>. 例如
cordova platform add browser
. 這個過程事件可能會比較長. - 刪除開發(fā)平臺
cordova platform remove browser
- 查看已添加的平臺
cordova platform ls
- 運行指定的平臺,cordova run <platform name>. 例如
cordova run browser
??看文檔相關
架構概覽
創(chuàng)建App : cordova create <PATH> [ID [NAME [CONFIG]]] [options]
- 使用
cordova help create
查看詳細參數(shù)說明
檢查滿足已添加平臺的開發(fā)需求: cordova requirements
編譯所有平臺: cordova build
編譯指定平臺: 例如cordova build ios
編譯成功后會在platforms文件夾下生成相應平臺的項目,然后可以用Xcode, Android studio 進行打包等操作
可以使用使用標準的web開發(fā)技術(HTML,CSS,JS)開發(fā)通用的一般頁面,如果需要訪問設備級的特性就需要add plugins添加插件. plungin對原生sdk功能進行封裝后暴露處js API供使用.
搜索插件: 在plugin search page查找相關插件. 也可以使用命令cordova plugin search camera
直接打開頁面查找.
安裝插件: 例如安裝camera相關的: cordova plugin add cordova-plugin-camera
使用cordova plugin ls
查看已安裝的插件
版本升級
- 查看當前版本:
cordova -v
- 查看最新版版本號:
npm info cordova version
- 升級到最新版:
sudo npm update -g cordova
- 安裝指定版本:
sudo npm install -g cordova@3.1.0-0.2.0
項目模板: Template
不實用. 需要的話看文檔Templates for apps部分
平臺支持: 用Mac 開發(fā)一切
開發(fā)平臺: Browser+Android+iOS, 其他的滾粗
管理版本和平臺: 有些??,用到了再細看
自定義圖標
在config.xml中配置,詳細參數(shù)看customize icons部分
數(shù)據(jù)存儲
- LocalStorage: 使用window.localStorage對象實現(xiàn)鍵值對存儲
- WebSQL: 支持sql語法
- IndexedDB: 貌似不支持iOS,差評
whitelist: 白名單. 額,目前無卵用.
插件開發(fā): 目前僅限于用,開發(fā)插件看需求吧.
使用plugman管理插件
與原生混合開發(fā): 基于webview
涉及Android和iOS原生開發(fā),具體看情況,現(xiàn)在暫時用不到.
項目結構參考
config.xml :全局配置文件. 具體各個參數(shù)意義及應用看文檔,很詳細.
Events: 事件發(fā)送及監(jiān)聽. 相當于通知機制.
CLI(Command-line-interface) : 命令使用詳細參考
hooks: 用于定制cordova命令. 應用層面目測用不著.
Plugin.xml : 開發(fā)插件相關的. 需要時看.
插件API: cordova提供的一些常用關鍵插件的api,用到哪里點哪里,so easy !