根据webview中的打开页面,应用程序是否有任何方式执行某项功能?例如,在其中检测一些javascript?
答案 0 :(得分:1)
这部分Android文档可能会有所帮助:http://developer.android.com/guide/webapps/webview.html#UsingJavaScript
您可以使用loadUrl()在WebView上调用javascript。例如:
webView.loadUrl("javascript: someJavascriptMethod(true, 1, 8, 'some string');");
该页面还可以使用Javascript接口将数据传递回Java代码。使用公共方法创建公共类。然后,创建该类的实例并使用webView.addJavascriptInterface()
进行安装例如
public class JsObject {
@JavascriptInterface
public String toString(String value) { // This method can be called from Javascript }
}
webView.addJavascriptInterface(new JsObject(), "injectedObject");
webView.loadData("", "text/html", null);
webView.loadUrl("javascript:alert(injectedObject.aJavaMethod('some value'))");
如果您需要查看某个javascript方法是否可用,或者您是否需要从DOM中读取,则可以使用loadUrl调用一些可以为您进行查找的javascript。然后,您可以使用javascript接口通过某种响应来调用Java方法。