我目前正在开发一款安卓应用。这个应用程序包含一个 WebView 并显示一个不属于我的网站。 (例如网上商店)
当用户点击本网站上的特定按钮(例如“购买产品”按钮)时,该应用程序应该能够识别/检测到。如果用户点击这样的按钮,应用程序会弹出 toast 。
我知道这对于每个网站来说都是不同的,但是我通常如何对点击检测进行编程?我读了一些关于注入(inject) JavaScript 等的文章,但是我真的不明白这是如何工作的。有没有办法说:如果用户点击 id=buy_button 的按钮,然后显示 toast?
感谢您的帮助!
最佳答案
webview.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
view.loadUrl("javascript:document.getElementById('buy_button').onclick = function(){alert('my message');}");
}
});
这会告诉您的 webview,当它完成加载时需要执行您的自定义 javascript 代码。在这种情况下,js 代码在页面中搜索 ID 为“buy button”的元素,并设置 onclick 处理程序以提醒您的消息。
如果您特别需要 toast ,那么您将需要设置一个 javascript 接口(interface),然后调用它们的方法。有道理吗?
关于javascript - 检测是否在 Android WebView 中单击了特定按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40620431/