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的源码到这里来


猜你喜欢

转载自blog.csdn.net/zlj002/article/details/47720685