android和html交互--动态注入方法

最近做的一个项目,需要使用到android和js的交互,动态向html里面注入js方法,然后执行,不难,直接贴代码:

        mWebview.loadUrl(sub_url);//sub_url是需要注入代码的html的网址
        //启用支持javascript
        mWebview.getSettings().setJavaScriptEnabled(true);
        mWebview.getSettings().setBuiltInZoomControls(false);
        mWebview.getSettings().setSupportZoom(false);
        mWebview.getSettings().setDomStorageEnabled(true);
        mWebview.requestFocus();
        mWebview.getSettings().setUseWideViewPort(true);
        mWebview.getSettings().setLoadWithOverviewMode(true);
        mWebview.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                // TODO Auto-generated method stub
                //返回值是true的时候控制去WebView打开,为false调用系统浏览器或第三方浏览器
                view.loadUrl(url);
                return true;
            }
            @Override
            public void onPageFinished(WebView view, String url) {
                super.onPageFinished(view, url);
                mWebview.loadUrl("javascript:function getSub(){alert(\"Welcome\");" +
                                "document.forms[0].submit();};getSub();");
} }) ;

在onPageFinished方法里面输入webview.loadUrl("javascript:"+"js方法名或者.js")。

你可能感兴趣的:(Android)