【问题标题】:android webview javascript does not load sometimesandroid webview javascript有时不加载
【发布时间】:2025-12-08 00:05:01
【问题描述】:

我正在使用 loadDataWithBaseUrl() 方法将 html 数据加载到 webview 中。我的 html 包含一个带有绝对路径的 JS 文件(file:///android_asset/myjs.js)。现在,如果我在 loadDataWithBaseUrl 方法中将基本 url 设置为“file:///android_asset/”或“fake://not_needed”,Javascript 有时不会加载。它大部分时间都有效,我可以在 webview 中看到呈现的 html。但有时它无法执行包含在 html 中的 Javascript。我在每个页面中都有一个带有 webview 的 viewpager。所有的 webview 正在同时加载。

【问题讨论】:

    标签: javascript android android-webview


    【解决方案1】:

    试试这个:

    webView.getSettings().setJavaScriptEnabled(true);
    

    在调用 loadUrl 之前:

    webView.clearCache(true);
    webView.clearHistory();
    

    【讨论】:

    • 我正在这样做。否则我将如何执行 JS。正如我所说,它在大多数情况下都有效。该问题随机发生在某些手机上。
    • 您是否尝试过清除缓存和 webview 的历史记录?如果我在调用 loadUrl 之前调用了这两个,我让我的 javascript 重新开始加载。
    • 非常感谢。这完全符合我的要求。将 Web 技术与原生技术相结合将大有裨益,而且省力。