我有一个从服务器加载webview的android应用程序。我没有服务器代码所以我无法在Javascript中进行任何更改。我想知道在webview中点击按钮的时间以及按钮中的标签是什么。我不知道Id,我只想获得标签。
我试着寻找这个,却找不到答案。我找到了可以在javascript中工作的解决方案,但在我的情况下我不能。
答案 0 :(得分:1)
此建议可能有助于找到可能导致确定按钮标签的有用信息。覆盖shouldOverrideUrlLoading()
的{{1}},shouldInterceptRequest()
和/或onLoadResource()
,以便您可以获取任何重定向的网址。
示例:
WebViewClient
注意:如上所述覆盖webview.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// Try to learn something useful from the 'url' here.
// Continue as normal, loading the 'url' within this WebView.
view.loadUrl(url);
return false; // Allow the WebView to handle the request.
}
// Optional: Add similar for "shouldInterceptRequest()" and/or "onLoadResource()".
});
是将重定向保留在同一shouldOverrideUrlLoading()
内而不是重定向到默认浏览器应用程序的标准方法。
答案 1 :(得分:0)
您可能真的想查看此页面:
Building Web Apps in WebView (Google API Guides)
具体来说,似乎addJavascriptInterface可能就是你要找的东西:
addJavascriptInterface(Object object, String name)
它允许您从javascript执行Java代码,并且能够在页面中插入代码,这是一个非常强大的工具,可以让您在Activity和页面之间实现高水平的耦合。
我认为在这一点上你已经知道该怎么做了,但无论如何我都会勾勒出一个可能的行动方案:
希望这有帮助