【问题标题】:Android webview load local javascriptAndroid webview加载本地javascript
【发布时间】:2011-09-25 20:49:24
【问题描述】:
我正在尝试通过 html 文件加载存储在设备上的 javascript 文件,该文件通过 webview 加载但似乎从未加载。我已经尝试过使用直接 url,就像您通常在 html 中使用的一样,并且也尝试过:
<script type="text/javascript" src="file:///android_asset/www/js/jsfile.js"/>
在 webview 设置中也启用了 JavaScript,如果我在服务器上安装它,它也可以正常工作。
如果有人可以提供帮助,谢谢。
【问题讨论】:
标签:
javascript
android
webview
【解决方案1】:
您可以使用loadDataWithBaseURL。
将所有 javascript 放在 assets 文件夹下,并在脚本标签(在 html 中)中提供相对于 assets 目录的 js 文件路径。不要在 src 的开头加上斜线。
将 html 读入字符串 (htmlStr),然后将其加载到 webview 中,如下所述。
webView.loadDataWithBaseURL("file:///android_asset/", htmlStr, "text/html", "UTF-8", null);
它对我有用。
【解决方案2】:
您好,实际上我认为您应该直接调用 js 文件,因为您是从将资产文件夹视为其根文件夹的浏览器中调用它的。从 java 代码调用时,您应该使用“file:///”前缀。试试这样的:
<script type="text/javascript" src="www/js/jsfile.js"/>