天天看點

android實作QQ遊戲大廳一樣的啟動第三方APP

之前試驗了一下統一登陸,用contentprovide可以實作資料共享,但現在遇到一個問題:

啟動第三方app的時候,有兩種情況:

一:第三方app已經啟動

   這情況就應該類型于按桌面快捷方式一樣重制第三方app的界面,而不是啟動一個新的界面。

二:第三方app未啟動,這類型應該啟動一個新的第三方app,但不能在本app的task上面。

剛測試了好幾種flag搭配,現将實作方式呈現如下:

[java] view

plaincopyprint?

componentname componetname = new componentname("com.xx.ac", "com.xx.ac.xactivity");//簽名參數是包名,後面參數是包名+類名[應用入口類的類名]  

intent intent = new intent();  

intent.setcomponent(componetname);  

intent.setaction(intent.action_main);//  

intent.addflags(intent.flag_activity_reset_task_if_needed);  

intent.addflags(intent.flag_activity_new_task);  

intent.addcategory(intent.category_launcher);  

context.startactivity(intent);  

相關flag可以參考另一篇博文:http://blog.csdn.net/lijunhuayc/article/details/43404951

intent攜帶參數未測試是否可以傳遞,有興趣的可以自己試一試哈~~~

注意:如果目标activity是singleinstance的話,需要涉及到activity 的

protected void onnewintent(intent intent) 方法使用

繼續閱讀