主动方:
String url = "schemename://";
Intent in = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
in.putExtra("", "");
startActivity(in);
被打开的APP:
被打开的activity,如果有多个intent-filter,每一个都需要加上
<category android:name="android.intent.category.DEFAULT" />
不然会爆 android.content.ActivityNotFoundException异常:
Android 隐式启动Activity 报错 android.content.ActivityNotFoundException异常
解决方法
节点中缺少:
原因:
由于在通过Intent调用Activity时,Android默认会自动添加CATEGORY_DEFAULT类别属性,故在Filter配置中CATEGORY_DEFAULT是不可缺少的;
<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="schemename" />
</intent-filter>