Android基础:通过Intent实现进程间通信(两个应用之间)

两个应用之间进程间通信,主要通过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);

 

posted @ 2012-11-01 20:23  demoblog  阅读(5556)  评论(0编辑  收藏  举报