天天看點

Android通過uri跳轉到APP指定的Activity

Android開發中使用H5混合開發很多,怎樣通過H5跳轉到 自己的APP或者其他的網頁呢?這裡 有很好的的解決方案:

如下:

首先,在AndroidManifest.xml裡面進行配置,在對應的Activity加上一個intent-filter, 如下:

<!--H5跳轉回來-->
<activity android:name=".JumpActivity">
    <intent-filter>-->
       <action android:name="android.intent.action.VIEW" />

       <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
      
        <data android:scheme="jumpapp" />
   </intent-filter>

</activity>
           

如果想測試代碼,接着往下:

接下來在對應的這個Activity加上相關解析代碼,如下:

  1. @Override  
  2.     public void onCreate(Bundle savedInstanceState) {  
  3.         super.onCreate(savedInstanceState);  
  4.         setContentView(R.layout.activity_main);  
  5.         Intent intent = getIntent();  
  6.         String action = intent.getAction();  
  7.         if (Intent.ACTION_VIEW.equals(action)) {  
  8.             Uri uri = intent.getData();  
  9.             if (uri != null) {  
  10.                 String host = uri.getHost();  
  11.                 String dataString = intent.getDataString();  
  12.                 String id = uri.getQueryParameter("id");  
  13.                 String path = uri.getPath();  
  14.                 String path1 = uri.getEncodedPath();  
  15.                 String queryString = uri.getQuery();  
  16.             }  
  17.         }  
  18.     }  

在H5裡面按傳回鍵有一個bug 可以通過finish() 關閉目前界面

//加載webview
webView.loadUrl(JiaYinDaiRetrofit.BASE_URL + "/customerAgree");//使用協定
//直接關閉目前界面
getActivity().finish();