Android应用程序中的Java与JavaScript如何交互

public class ATActivity extends Activity {
 WebView wv; javascript

 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
  wv = (WebView) findViewById(R.id.webView1);
  WebSettings webSettings = wv.getSettings();
  // 必须执行下面语句,不然WebView没法执行JavaScript脚本
  webSettings.setJavaScriptEnabled(true);
  wv.setWebChromeClient(new WebChromeClient());
  String s = "<script type=\"text/JavaScript\">alert(\"wo shi che\");</script>";
  wv.loadDataWithBaseURL(null, s, "text/html", "utf-8", null); html

 

--------------------------以上是JAVA 执行JavaScript脚本------------------------------------------------------ java

---------------------------------如下是用JavaScript调用Java代码----------------------------------------------------------   web

// 在java代码和javascript脚本之间传递数据以及使JavaScript脚本能够执行Java
  // 代码须要WebView.addJavacriptInterface方法添加,能够在JavaScript调用Java方法
  wv.addJavascriptInterface(new Object() {
   public void move(int x, int y) {
    Toast.makeText(getApplicationContext(), "hi", Toast.LENGTH_SHORT).show();
   }
  }, "demo");
  String s1 = "<script type=\"text/JavaScript\">window.demo.move(20,100);</script>";
  wv.loadDataWithBaseURL(null, s1, "text/html", "utf-8", null); ide

 }
} spa

相关文章
相关标签/搜索