这个话题被提出和讨论了数百次。它们都与我面临的情况不符。请在回答之前阅读以下内容。
我想使用 WebView 从服务器响应中获取一些信息并显示在 WebView 中,但在嵌入式 javascript 执行之后。想要的信息可以随时在服务器中更改,目的是将此信息本地存储在客户端发布请求中,以便按需更新。
我使用 WebChromeClient 来确定页面何时加载 (onProgressChanged = 100%) 并使用 JavaScriptInterface 来获取 HTML 内容,但我获得了源代码(javascripts 尚未执行)。
我想捕捉的信息只有在 javascripts 执行后才可用。请参阅附图,它可能有助于澄清我的担忧。
如果有人遇到类似问题,我很想知道它是如何解决的。 谢谢
答案 0 :(得分:0)
如果您知道 JSON 何时到达页面,那么您可以使用 WebView.evaluateJavascript
并运行 javascript 来提取 HTML。
根据https://stackoverflow.com/a/35917295/2921519 HTML提取可以通过
new XMLSerializer().serializeToString(document)
如果需要javascript在页面内容发生变化时主动通知Android端,则需要根据https://developer.android.com/guide/webapps/webview#BindingJavaScript添加javascript接口