android js与webview的交互

作者: 静染星辰 | 来源:发表于2019-06-06 17:50 被阅读2次

1,js调起webview:

webview.addJavascriptInterface(new AndroidObj(), "saoma");//往要访问的文档里面塞一个window下的androidObj对象

一定要注意第二个参数"saoma"要和js中对应

class AndroidObj{

        @JavascriptInterface
        public void getTitle(String title){
            top_title.setText(title);
        }

        @JavascriptInterface
        public void call(){
            Intent intent = new Intent(getApplicationContext(), QrCodeActivity.class);
            startActivityForResult(intent,QR_CODE);
        }
    }

js调起java的方法:

<div class="aui-list-item-right" onclick="saoma.call()">扫码 </div>

saoma.call()即调起AndroidObj类中call方法
也可以使用webview调用:
webview.loadUrl("javascript:window.saoma.getTitle(document.title)");调起AndroidObj类中getTitle方法

2,webview调起js:

给js中的方法Callback传值:(js中的方法名是Callback哦)

webview.loadUrl("javascript:Callback(\""+resultstr+"\")");

此处需要特别注意 的是传值一定要加上转义的双引号,否则执行失败,不太了解js,具体原因还不知道(╥╯^╰╥)

--------END------

我是静染星辰,私人微信:azxy986753

欢迎添加微信,互相学习,互相进步!

相关文章

网友评论

    本文标题:android js与webview的交互

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