AndroidではWebViewでJavascriptのJavaコールを実現します。

1139 ワード

Androidシステムは、ウェブページとAndroidアプリケーションとの相互作用を容易にするために、JavaScriptのウェブスクリプトからJavaのような方法を呼び出すメカニズムを提供しています。addJavascript Interface方法を呼び出すとJavaオブジェクトをJavaScriptオブジェクトにマッピングすることができます。
1、JavaオブジェクトをJavaScriptオブジェクトにマッピングする
 
  
mWebView = (WebView) findViewById(R.id.wv_content);
mWebView.setVerticalScrollbarOverlay(true);
final WebSettings settings = mWebView.getSettings();
settings.setSupportZoom(true);

//WebView Javascript
settings.setJavaScriptEnabled(true);
settings.setJavaScriptCanOpenWindowsAutomatically(true);

// Java ”js2java“ Javascript
//JavaScript "window.js2java" Java
mWebView.addJavascriptInterface(new JSInvokeClass(), "js2java");

 
  
/** Javascript **/
class JSInvokeClass {
    public void back() {
        activity.finish();
    }
}
2、JavaScriptがJavaオブジェクトを呼び出した例
上記のJSInvokeClass類のオブジェクトを呼び出すback方法は、以下の通りです。
 
  
window.js2java.back();