如何在android webview中注入javascript接口
How to inject javascript interface in android webview?
我正在android的webview中加载一个页面。该页面有一个元素(按钮)与以下代码,注意:-这是一个第三方网站,我无法控制这里显示的代码:-
<i class="icon close cardClose" role="button" title="Close recently linked screen" tabindex="0"></i>
我想添加一个javascript接口,如下面的方法:-
private class myWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
view.addJavascriptInterface(new Object()
{
@JavascriptInterface
public void performClick() throws Exception
{
Toast.makeText(Activity.this, "Login clicked", Toast.LENGTH_LONG).show();
}
}, "login");
return true;
}
}
mWebView.setWebViewClient(new myWebViewClient());
但是问题是webview源代码说:-
* @param object the Java object to inject into this WebView's JavaScript
* context. Null values are ignored.
* @param name the name used to expose the object in JavaScript
*/
public void addJavascriptInterface(Object object, String name) {
checkThread();
mProvider.addJavascriptInterface(object, name);
}
按钮似乎没有名为"name"的属性。
我推荐你这样使用
view.addJavascriptInterface(new JavaScriptInterfaceNew(getActivity(), this), "Android_Normal_Test");
这里JavaScriptInterfaceNew
是你的类名Android_Normal_Test
是你的对象当你需要将一些事件从webview
传递到activity class
时
相关文章:
- 注入Javascript以选择具有指定值的所有单选按钮
- 在表单上注入javascript以发送post请求
- 动态注入javascript文件-为什么大多数示例都附加到头上
- 从 Meteor 模板注入 JavaScript
- 注入javascript代码的正确方式
- Html注入javascript代码
- 如何在不使用脚本标记的情况下注入javascript
- 使用C#在BHO中注入javascript-如何正确地转义字符串
- 我们如何将PHP变量注入Javascript
- document.write 注入 javascript 的计时
- 通过浏览器扩展注入 JavaScript
- 在 WebView 完成从以前的 JavaScript 注入加载后,在 Android 中注入 JavaScript
- 在服务器上注入 JavaScript 代码
- 将 PHP 数据注入 JavaScript 代码
- 样式注入Javascript事件
- 从c#中的代码后面向链接按钮注入JavaScript
- 在匿名函数中注入JavaScript变量作为值
- 从Chrome扩展在页面中注入Javascript:并发问题
- asp.net我可以将配置设置注入javascript吗
- WebBrowser注入Javascript将焦点设置为第一个输入框