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