(人的惰性是很可怕的,时隔半年我又有鸡血写些东西了,时间过得太快了_(:зゝ∠)_)
1) 启动另一个APK中的入口Activity:
Intent i = new Intent();
ComponentName name =new ComponentName(“包名”, “包名.类名”);
i.setComponent(name);
startActvity(i);
不需要任何设置,普通方式启动即可。
2)启动另一个APK中非入口Activity:
被启动端的Activity有以下两种方案的设置:
(1)方案一:必须设置category;必须设置action
<intent-filter>
<action android:name="com.example.test.OPEN_ME"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
(2)方案二:只需要设置exported=“true”,启动端用i.setComponent(name);方法启动即可
<activityandroid:name="com.example.test.Aty2"
android:launchMode="singleInstance"
android:exported="true">
<!-- <intent-filter>
<actionandroid:name="com.example.test.OPEN_ME" />
<categoryandroid:name="android.intent.category.DEFAULT" />
</intent-filter>-->
</activity>
关于Inetnt-Filter中data、catogory、acrion、extras的说明,参考网址:http://www.cnblogs.com/yaozhongxiao/archive/2013/10/12/3365185.html