问题一:ERROR, source file:///android_asset/www/build/vendor.js (1)
从 Android Studio
的 Log
记录中发现此错误信息,然后通过 Chrome
的 inspect
工具查看到 Log
为:TypeError: Cannot read property 'setItem' of null {stack: (...)
,解决方案如下:
// webview的设置中添加如下代码
mWebView.getSettings().setDomStorageEnabled(true);
mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); //设置 缓存模式
// 开启 DOM storage API 功能
mWebView.getSettings().setDomStorageEnabled(true);
//开启 database storage API 功能
mWebView.getSettings().setDatabaseEnabled(true);
//开启 Application Caches 功能
mWebView.getSettings().setAppCacheEnabled(true);
问题二:跨域问题
mWebView.getSettings().setAllowFileAccess(true);
mWebView.getSettings().setAllowFileAccessFromFileURLs(true);
mWebView.getSettings().setAllowUniversalAccessFromFileURLs(true);
问题三:身份认证Cookie丢失问题
//5.0以上需要开启第三方Cookie存储
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
CookieManager.getInstance().setAcceptThirdPartyCookies(mWebView, true);
}