美文网首页
Android 原生与WebView JS的交互

Android 原生与WebView JS的交互

作者: 遇见的延长线 | 来源:发表于2020-12-31 14:49 被阅读0次

webview调用java方法

1.允许webview加载js :

webView.getSettings().setJavaScriptEnabled(true);

2.编写js接口类

import android.util.Log;
import android.webkit.JavascriptInterface;

public class TestJavascriptInterface {
    @JavascriptInterface
    public void testMethod(String value) {
        Log.e("JavascriptInterface", "come in testMthod");
    }
}

3.给webview添加js接口:

webView.addJavascriptInterface(new TestJavascriptInterface(),"testObj");

android中调用js方法

webView.loadUrl("javascript:if(window.testJSMethod){window.testJSMethod('this is my test content')}")

chrome的调试

1.webView.setWebContentsDebuggingEnabled(true);
2.通过chrome浏览器进行调试,在地址栏输入chrome://inspect/#devices

js交互中常见的错误

1.在Android中声明的JavascriptInterface接口的的方法中throw Exception,本地并不会捕捉到报错信息,网页端会出错。
2.web端不进行对象是否存在的判断
3.传递的参数类型不一致(尤其是数组和对象)
4.字符串类型参数未空时传递undefined

相关文章

网友评论

      本文标题:Android 原生与WebView JS的交互

      本文链接:https://www.haomeiwen.com/subject/pldloktx.html