发生这个错误的原因,是因为Android基于安全性的考虑,从Android 4.1版开始禁止了WebView内的本地网页使用XMLHttpRequest来读取本地档案(4.1版之前无限制)。这也就造成了「Android 4.1之前的手机」可以正常使用XMLHttpRequest,而「Android 4.1之后的手机」无法正常使用XMLHttpRequest。
WebSettings settings = webView.getSettings(); settings.setJavaScriptEnabled(true); //设置是否运行网上的js代码 settings.setDomStorageEnabled(true); //设置是否运行网上的js代码 //加上这个 if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN) { settings.setAllowFileAccessFromFileURLs(true); }
html 中在用下面的去获取数据
request.onload = function () { if (request.readyState === 4 && request.status !== 404) { loadJson(JSON.parse(request.responseText), scene, lark, camera); }else{ console.log("加载失败!!!"+ JSON.stringify(request)); } }