Android WebView addJavascriptInterface无效原因

来源:互联网 发布:java中数组的定义 编辑:程序博客网 时间:2024/05/20 08:44

http://blog.csdn.net/zboyco/article/details/39669305

今天再写Android WebView 的时候,发现addJavascriptInterface里面的方法在JS里无法被调用,折腾了一个中午,才发现是因为在Android4.2以后,为了安全问题,需要在方法前加入“@JavascriptInterface”注解。

如下:

[java] view plain copy
  1. webSettings.setJavaScriptEnabled(true);  
  2.         mWebView.addJavascriptInterface(new Object() {  
  3.             @JavascriptInterface  
  4.             public void clickMoreOnAndroid() {  
  5.                 mHandler.post(new Runnable() {  
  6.                     public void run() {  
  7.                         Toast.makeText(MainActivity.this"测试!", Toast.LENGTH_SHORT).show();  
  8.                     }  
  9.                 });  
  10.             }  
  11.         }, "demo");  

加入注解后,WebView 中JS 调用成功,调用方法:

<a onclick="window.demo.clickMoreOnAndroid()">

记录下来,下次碰到不用再折腾。。。

0
0
 
 

阅读全文
0 0