java - Android Web 视图未从资产文件夹加载
问题描述
正常工作正常网页,但 iframe 未加载。
W/cr_AwContentsClient: Denied starting an intent without a user gesture, URI
file:///android_asset/assets/main.html
显示此消息。
我试过这个
view.getSettings().setDatabaseEnabled(true); view.getSettings().setDomStorageEnabled(true); view.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); view.getSettings().setSupportMultipleWindows(true);
你能告诉我解决方案吗?
解决方案
尝试这个 :
webview.loadUrl("file:///android_asset/assets/main.html");
如果上述方法不起作用,请尝试以下操作:
try {
AssetManager assetManager = this.getAssets();
InputStream stream = assetManager.open("main.html");
BufferedReader r = new BufferedReader(new InputStreamReader(stream));
StringBuilder total = new StringBuilder();
String line;
while ((line = r.readLine()) != null) {
total.append(line).append("\n");
}
webView.loadDataWithBaseURL(null, total.toString(), "text/html", "UTF-8", null);
} catch (Exception ex) {
ex.printStackTrace();
}
推荐阅读
- flutter - Flutter中如何在谷歌移动广告中使用关键字
- php - 如何将消息移动到 IMAP Laravel 中的文件夹?
- python-3.x - AttributeError:“RandomForestClassifier”对象没有属性“export”
- dynamics-crm - 在 Dynamics 365 中创建系统仪表板
- python - 使用序列匹配器比较文本相似性:为什么小写和大写字符串的结果不同?
- typescript - Immutable.js 与 React Typescript 结合
- javascript - 列表的 JavaScript RegExp 问题
- java - 启动 Spring Boot 应用程序的 Linux 命令
- akka.net - 在 Akka.Net 中,我们可以从 Tcp 演员派生 TcpStream 演员吗?
- powershell - Powershell Get-Random 仅返回最小值