目前在我的onCreate
我有
webView.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
if (progress == 100) {
// get the innerText from user_id_firebase ID and put it in my db
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("message");
myRef.setValue("Done Loading!");
}
}
});
这确保我的 webview 已完成加载所有 html。在这一点上,我需要通过元素的 id 获取元素的 innerText,user_id_firebase
以便我可以将它写入我的 firebase 数据库。我遇到的问题是在堆栈上找到可以在我的内部工作的代码setWebChromeClient
我正在看着这个并将它放在下面if (progress == 100) {
但是
webView.evaluateJavascript(
"(function() { return ('<html>'+document.getElementsByTagName('user_id_firebase')[0].innerHTML+'</html>'); })();",
new ValueCallback<String>() {
@Override
public void onReceiveValue(String html) {
Log.d("HTML", html);
// code here
}
});
但我得到
Variable 'webView' is accessed from within inner class, needs to be declared final
老实说,我是 Android Studio 的新手,所以有人有一些智慧吗?
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句