h5跳轉activity

第一種是經過webview提供的js和Java溝通的接口進行javascript

public void addJavascriptInterface(Object object, String name)
  •  

而後,在JavaScript裏能夠經過name來引用到object對象裏有@JavascriptInterface註解的方法html

Java代碼java

WebView wv;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        wv = (WebView)findViewById(R.id.webView);
        wv.getSettings().setJavaScriptEnabled(true);
        wv.addJavascriptInterface(this, "nativeMethod");
        wv.loadUrl("file:///android_asset/index.html");
    }

    @JavascriptInterface
    public void toActivity(String activityName) {
        //此處應該定義常量對應,同時提供給web頁面編寫者
        if(TextUtils.equals(activityName, "a")){
            startActivity(new Intent(this,AActivity.class));
        }else{
            startActivity(new Intent(this,BActivity.class));
        }
    }
  •  

javascript代碼android

<!DOCTYPE HTML>
<html>

<script type="text/javascript">
  function gotoActivity (activity) {
    nativeMethod.toActivity(activity);
  }
</script>
<body>

<button onClick="gotoActivity('a')">gotoActivity A</button>
<button onClick="gotoActivity('b')">gotoActivity B</button>

</body>
</html>
  •  

以上是第一種方法,在index.html頁面能夠跳轉到AActivity和BActivity。web

相關文章
相關標籤/搜索