两个应用之间进程间通信,主要通过Intent的隐式意图来实现,主要包括:action、catagory、DataAndType
action可以理解为就是一个字符串匹配;
catagory范畴,Android不允许android.intent.action.MAIN的activity通过隐式意图启动,所以一般设置为android.intent.category.DEFAULT
catagory一般不要随便写,用系统的。
DataAndType:数据和MIME类型,
如果没有数据Data可以设置为Uri.EMPTY,
TYPE可以随便写:<data android:mimeType="tom/HuoDongActivity" /> 但是如果要用内容提供者的话有特殊要求
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity android:name=".TestView" >
<intent-filter>
<action android:name="android.intent.action.PICK" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="tom/HuoDongActivity" />
</intent-filter>
</activity>
</application>
Intent intent = new Intent("android.intent.action.PICK");
intent.setDataAndType(Uri.EMPTY, "tom/HuoDongActivity");
intent.addCategory("tom");
startActivity(intent);