我的 Android 应用程序将 JS 代码注入 WebView。它针对的是 Android 3.1,但我遇到了 Android 6 和 7 的问题,因为 WebView 现在内部是铬,所以它不是旧的 WebView。
不过这个问题很奇怪,所以我不认为这是因为我的应用程序强制使用 Android 6 和 7 的怪癖模式。
我的应用程序使用所有有用的调用来加载在 Java 代码和 JS 代码之间创建绑定的 JS 接口,并且它适用于以前的版本。在这些指令(addJavascriptInterface() 方法)之后,它执行“假”加载以确保加载 JS 接口:
webView.loadData("", "text/html", null);
并且当“页面”被加载时,它执行真实url的加载,即本地文件(file:///...);当它也被加载时,一个脚本被注入并执行。
我的经验是,我在 log cat 上不断收到以下错误:
Cannot call determinedVisibility() - never saw a connection for the pid:
我尝试了关于这个的各种建议,但没有成功:
它是“data:text/html” url,不断被加载,我可以阻止它只加载一个空的 url,但是 JS 界面丢失了。
我该怎么做才能保留 JS 界面并阻止无限加载循环?