Android应用间跳转和H5跳转Android应用
2020-08-20 本文已影响0人
李moumou
如下方式能够实现跳转,同时我们的应用能拿到外部跳转传入的参数
一、其他Android跳转我们的Android应用
1、外部应用跳转代码
Intent intent = new Intent();
intent.setData(Uri.parse("scheme://com.demo:8888/from?type=tjh&id=1000"));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
2、我们的应用配置,manifest文件增加intent-filter标签
<intent-filter>
<!-- 协议部分配置 ,注意需要跟web配置相同-->
<!--协议部分,随便设置 scheme://com.demo:8888/from?type=tjh &id=1000 -->
<data android:scheme="scheme"
android:host="com.demo"
android:path="/from"
android:port="8888"/>
<!--下面这几行也必须得设置-->
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<action android:name="android.intent.action.VIEW" />
</intent-filter>
3、我们的应用获取跳转参数
Intent intent = getIntent();
String action = intent.getAction();
String type= null;
String id = null;
if (Intent.ACTION_VIEW.equals(action)) { //H5
Log.e("ACTION_VIEW","ACTION_VIEW");
Uri uri = intent.getData();
if (uri != null) {
type = uri.getQueryParameter("type");
id = uri.getQueryParameter("id");
}
}else {
Uri uri = intent.getData();
if (uri==null) return;
type = uri.getQueryParameter("type");
id = uri.getQueryParameter("id");
}
二、H5跳转Android应用
1、H5页面添加标签
<a href="scheme://com.demo:8888/from?type=tjh&id=800">打开app</a>
2、我们应用配置同上配置