本帖最后由 ecoolper 于 2014-12-24 17:55 编辑

Web技术的优势早已被广大

Crosswalk作为一款开源的web引擎,正是为了跨越这些障碍而生。目前Crosswalk正式支持的移动

Crosswalk有何优势?

Crosswalk采用Chromium内核并不断地快速演进(六周一次更新),使基于Crosswalk的Web应用充分享有Chromium的功能与性能优势,以及较好的平台一致性。同时,Crosswalk支持最新的HTML5 API,包括WebGL,WebAudio,WebRTC,Gamepad,WebSocket等等。一个展示基于Crosswalk的web应用的很好的例子是这款名为HexGL的3D游戏,我们在原有游戏(http://hexgl.bkcore.com)基础上做了一些改进(https://github.com/hmin/HexGL),如图1所示。它是一款用纯web技术开发的游戏,使用了WebGL,WebAudio,Gamepad,Presentation等HTML5 API,支持4.0之后的所有Andorid平台,并且在低端的Android设备上也能流畅运行,诸如

图示:HexGL游戏演示

如果Crosswalk提供的API不能满足需求,还支持通过编写原生的

Crosswalk允许Web开发者将他们的应用打包成系统的应用安装包(如:Android上的APK),获得与本地应用一致的体验。Crosswalk也支持多个应用同时使用一个Crosswalk库的共享模式,仅当应用第一次启动并且发现系统还没有相应的Crosswalk库时才提示用户下载安装。目前是大多数情况下开发者将Crosswalk直接嵌入到应用本身。在这种嵌入模式下Web应用开发者可以完全控制Crosswalk的更新。

同时,Crosswalk在不断试验各种Web前沿的功能,并积极地反馈与影响标准(W3C)的制定。更重要的是,Crosswalk确保这些被标准化的功能解决了现实的问题并帮助开发者创造更具吸引力的应用与用户体验。HexGL游戏中使用的Presentation API就是这些实验性功能的一个典范。它由

Crosswalk与WebView的不同

WebView组件,如iOS的UIWebview、Android的Webview等,作为系统自带Web引擎,在HTML5能力上相比

有人可能会问,Android WebView自Android 4.4起已经采用了Chromium内核,这与 Crosswalk有和不同?基于Chromium内核的WebView(Chrome WebView)和Crosswalk比起来目前存在两大缺陷:一是不被4.4之前的Android支持;二是性能以及功能与Crosswalk还有较大差别。主要的原因是Chrome WebView要向前兼容基于Android 4.4之前的WebView的应用。这意味着Chrome WebView要支持许多旧的功能,所以架构设计更为复杂, 从而导致部分功能还没有完善,同时在某些情况下会降低性能。目前Chrome WebView的Canvas的性能所受影响最大,WebGL的性能与Crosswalk比也有所差距。由于Crosswalk不需要保持这种兼容性,它可以采用与