我试图从服务器加载一个html页面,该页面包含一个链接到android .js文件的脚本。
爪哇:
String url ="http://192.168.84.86:8080/test/maw/js_load_test.html";
this.loadUrl(url);
js_load_test.html:
<script src="file:///sdcard/test.js"></script>
我也试过:
<script src="file:///android_asset/www/js/test.js"></script>
test.js文件存在,js文件路径正确。但在logcat中: file:///sdcard/test.js:
file:///sdcard/test.js 03-18 13:01:12.467: e/
控制台(26189):不允许加载本地资源:
file:///android_asset/www/js/test.js:
file:///android_asset/www/js/test.js 03-18 13:01:53.467: e/
控制台(26189):不允许加载本地资源:
:0
发布于 2012-03-18 13:43:32
这可能会有帮助
https://groups.google.com/group/android-developers/browse_thread/thread/e20e87d2faf9ff41?pli=1#
webview.loadDataWithBaseURL( "file:///android_asset/", html, "text/html",
"utf-8", null );
发布于 2014-04-21 10:21:02
如果“不允许加载本地资源: file:///android_asset/index.html”错误“,那么您的问题很可能是将”资产“文件夹放置在错误的位置。
对于gradle项目,请通过java和res文件夹将您的资产文件夹存储在src/main/目录下。如下所示:
项目-文件夹-|project_name
-建造
-src
-资产
--爪哇
对于maven项目,在res/目录下存储yout资产
发布于 2015-03-21 12:25:04
要解决这个问题,请在"main“中创建一个名为" android_asset”的文件夹,在android_asset文件夹中创建另一个名为" assets“的文件夹,并将您的html文件放在资产中并使用该mWebView.loadUrl调用(”android_asset HTMLFILE.html“);
我也有同样的问题,即使我不叫mWebView.loadUrl("file:///android_asset/assets/YOUR HTML FILE.html");它仍然是如何工作的。我觉得很奇怪,因为那是html的实际位置!
因此,您的文件夹应该类似于这个main/android/ HTML.html /HTML.html并使用mWebView.loadUrl调用(“mWebView.loadUrl HTMLFILE.html”);
这是我的造型。
公共类MainActivity扩展ActionBarActivity {
private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.activity_main_webview);
// Enable Javascript
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
mWebView.loadUrl("file:///android_asset/index.html");
}
https://stackoverflow.com/questions/9758756
复制相似问题