一、场景
最近项目在加载html5 3D全景图时遇到个系统兼容的问题,是Android4.3及其以下版本浏览器内核对html5的特性支持不全,导致加载到WebView中之后全景图放大缩小时出现图形绘制错乱的问题,现象是缩小时,3d全景图是缩小了,但空出了大部分灰色,没有及时用图形补齐。
更正说法:
3D全景图的加载目前在Android系统SDK6.0以下的版本WebView对WebGL的支持不够全,大家可以了解下Cordova或Crollswalk去解决加载问题,重点是Crollswalk。
二、解决方法:
既然是SDK不支持,就可以判断Android系统版本,如果低于4.3的版本,则在Android应用中不提供进入全景图的入口。对了还有需要注意Android清单文件中关于 targetSdkVersion的配置,一定要>=19以上的版本才支持3d全景,之前由于我们的应用配置的是8,(Android2.2的对应的SDK版本),WebView是不支持html5的显示的,因此会出现上述问题。
错误配置如下:
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="8" />
修正配置如下:
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="19" />