在一些場景中我們需要從一個進程啟動另外的一個應用的activity,這有什么好辦法?
這里介紹一種方法,通過自定義 action 通過filter來啟動。
如果你需要啟動一個你自己寫的另一個app的activity,你可以在那個的menifest.xml里自定義activity的action:
<activity android:name=".MainActivity" android:label="@string/app_name" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"> <intent-filter> <action android:name="com.qylk.call.main" /> <!-- 自定義的action--> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.DEFAULT" /><!--必須加上這個,否則下面無法直接使用自定的action--> </intent-filter> </activity>
這場景適用於 Notification 的通知啟動應用。
另外一種方法
從任意app,啟動另外一個app的activity:
1. Intent i = new Intent(); ComponentName cn = new ComponentName("com.book.android2", "com.book.android2.AndroidSearch"); i.setComponent(cn); i.setAction("android.intent.action.MAIN"); startActivity(i); //or startActivityForResult(i, RESULT_OK);
更多的移動互聯網的發展趨勢、app開發、移動互聯網應用相關的資料請到互聯網的一點事:www.yidin.net 留言
android QQ群:222392467
資料:
http://www.yidin.net/?p=8280
http://www.yidin.net/?p=9725
http://my.oschina.net/yidinshi/blog/133729