JS和Android交互

Posted 卜筮老人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS和Android交互相关的知识,希望对你有一定的参考价值。

 

 

    
     //本地webview写法
    webview = (WebView) findViewById(R.id.webview); webview.loadUrl("http://192.168.1.103/index.html"); webview.getSettings().setjavascriptEnabled(true); //允许js脚本运行 webview.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); webview.getSettings().setBuiltInZoomControls(true); webview.getSettings().setJavaScriptEnabled(true); webview.addJavascriptInterface(new JsToJava(mContext),"mObject");//添加映射对象到js

 

js代码


body> <a>js中调用本地方法</a> <script> function funFromjs(){ document.getElementById("helloweb").innerHTML="HelloWebView,i‘m from js"; } var aTag = document.getElementsByTagName(‘a‘)[0]; aTag.addEventListener(‘click‘, function(){ //调用android本地方法 myObj.fun1FromAndroid("调用android本地方法fun1FromAndroid(String name)!!"); return false; }, false); </script> <p></p> <div id="helloweb"> </div> </body> </html>

本地和js映射的对象:

public class JavaScriptObject {
    Context mContxt;

    public JavaScriptObject(Context mContxt) {
        this.mContxt = mContxt;
    }

    public void fun1FromAndroid(String name) {
        Toast.makeText(mContxt, name, Toast.LENGTH_LONG).show();
    }

    public void fun2(String name) {
        Toast.makeText(mContxt, "调用fun2:" + name, Toast.LENGTH_SHORT).show();
    }
}

 




以上是关于JS和Android交互的主要内容,如果未能解决你的问题,请参考以下文章

Webview Android与js交互

Android实现WebView和Js交互

android 和 js 交互

Android-webview和js脚本语言交互的时候怎么获取js方法的返回值

Android Webview 和Javascript交互,实现Android和JavaScript相互调用

WebViewJavascriptBridge实现js与android和ios原生交互