phonegap(cordova) 入門 2----使用Crosswalk 統一android 下 cordova運行的環境

上接入門1 ,鑑於有的程序員再使用了phonegap之後,感覺在android 低端機上的體驗非常,很,嚴重的不好,然後就放棄了,下面這個工具有可能會讓你對phonegap的信心重新找回,所以我把這個列入了在瞭解機制之後的優先要看的 入門 2

你既然看了這個標題,那麼我認爲你一定了解了cordova ,還是先簡單介紹一下Cordova是目前非常流行的web應用開發框架,它通過提供一組設備API使web應用具備在JavaScript中訪問本地設備的能力,例如攝像頭和加速傳感器。同時Cordova可以將web應用打包成系統原生應用格式併發布到它所支持的各個平臺,包括iOS,Android,Blackberry,Windows Phone 和 Firefox OS。

然而Cordova在Android平臺上是使用系統自帶的WebView作爲它的引擎,正因爲這樣,android 下回出現各式各樣的奇葩現象(各種開發商的修改,或者壓根就沒有升級自帶的本機webview),那麼我們該如何解決這個問題呢?你肯定會想到,能不能指定運行時,或者乾脆給他打包個運行時?答案是肯定的。而Crosswalk也正是這種機制 ,反正我簡單把它理解爲一個爲cordova 在android(ios 不需要處理,因爲cordova在ios已將相當美好了)下的項目添加一個統一的運行時的插件,原有cordova 項目一個代碼都不需要修改,那麼下面我們看看 如何在現有的cordova項目下 ,添加這個神奇的運行時

1--首先下載crosswalk-cordova-android開發包。有不同的版本(canary,beta,stable)和CPU架構(x86, arm)開發包供開發者選擇。


2--將你現有的cordova項目導入到adt (這個我是一開始使用cordova就導入的,因爲我用不慣在命令行下編譯和生成,當然創建項目以及添加插件要用命令行)

3--導入Crosswalk-Cordova-android庫工程,這個工程是在“/path/to/crosswalk-cordova-android/framework”目錄,它將會導入`xwalk_core_library` and `CordovaLib`兩個工程。(注意這裏一定要選對你的版本,跟你的cordova的版本對應,不然會有問題


4--配置當前工程(你的原有項目),右擊工程屬性,移除老的“CrodovaLib”依賴關係。

5--配置當前工程(你的原有項目),右擊工程屬性,添加項目依賴Crosswalk-Cordova-android中的“CrodovaLib”依賴關係。

最終依賴關係爲   你的原有項目 依賴於》》》》》   CordovaLib(新的)依賴於》》》》》xwalk_core_library

所以編譯每個工程。先編譯”xwalk_core_library”,然後“CordovaLib”,最後你的原有項目

ok,再次打包你的原有項目你會發現,運行統一了,性能也有提升了(相對老手機)

那麼最後說說它的優缺點,簡單說,

優點,統一,性能提高,還有支持其他更多html5的功能包括WebGL,WebAudio,WebRTC,Gamepad,WebSocket等等,如果不統一後果可想而知

缺點,包增大了(真的相當於添加運行時,當然大),使用了crosswalk之後大概需要增加10M左右,哈哈,一般下載apk,總會在wifi下吧,及時你在小的包,我肯定不會使用流量下載,土豪略過

如果你像瞭解crosswalk的源碼到這裏來


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章