Crosswalk for Android

加载krpano生成的全景浏览页面时,系统自带的WebView性能不好。遂转向寻找一个第三方的高性能WebView库。备选包括腾讯的TBS X5内核以及Crosswalk。
第三方WebView库还有一个好处:就是屏蔽了不同系统版本以及不同厂商优化带来的兼容性问题。

TBS X5内核


TBS腾讯浏览服务
由于我测试X5内核的时候跟Crosswalk在同一个包里测试的,所以导致很长一段时间都没有成功加载X5内核。
后来在X5论坛管理员的帮助之下,得到了解决方案。原因是由于Crosswalk包里有com.chromimum的类,和X5内核里边的有交叉污染导致的。
需要在初始化的时候做如下的设置:

HashMap map = new HashMap();
map.put(TbsCoreSettings.TBS_SETTINGS_USE_PRIVATE_CLASSLOADER, true);
QbSdk.initTbsSettings(map);

这样就可以成功加载X5内核了。渲染krpano的全景图和Crosswalk并没有多大的性能差别。

Crosswalk


Crosswalk Project

下载SDK

SDK可以下载aar包,也下载zip包(zip包包括arm和arm64单独包和合集包)。
Android Platform

集成指南

Embedding the Crosswalk Project

评测结果

经肉眼测试,加载同一个krpano生成的全景页面,比系统自带WebView渲染性能高很多。

缺点

在打开abiFilter为armeabi-v7a的情况下,APK包的体积大概要增加20多M,加上混淆之类的手段可能稍微有点减小。
如果要支持64位的话,再打开armeabi-v8a的情况下,体积将会接近翻倍。

TODO 性能测试数据对比图

你可能感兴趣的:(Crosswalk for Android)