2012-08-30 60 views
0

我已經儘量減少使用這個我的應用程序..如何最大化應用程序對事件的影響?

   Intent startMain = new Intent(Intent.ACTION_MAIN); 
       startMain.addCategory(Intent.CATEGORY_HOME); 
       startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
       startActivity(startMain); 

該應用程序正在等待某些事件,而它在最小化state.How我可以回到當一些廣播事件發生時,應用程序的活動?

我可以從廣播接收器類訪問最小化的活動(使用傳遞給它的對象),但它運行在主屏幕的背景中。

並最終會殺死最小化的應用程序?

+0

看看這個代碼http://stackoverflow.com/questions/3849868/startactivity-from-broadcastreceiver –

+0

我不想開始一個新的活動......重新打開最小化的一個.. – Amel

+0

不,你沒有'最小化'你的申請。在android中沒有這種東西。 –

回答

1

您可以使用Intent再次開始活動。

例子:

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.setComponent(new ComponentName("com.package.address","com.package.address.MainActivity")); 
startActivity(intent); 
+0

謝謝,這工作! – Amel

+0

請將它標記爲答案,以便它可以幫助他人。 –

+0

我希望我可以。我現在沒有選擇作爲正確答案的選擇(由於低信譽)。 我會盡快將其標記。 – Amel

1

如果你想最大限度的應用程序,你需要在這種情況下,用戶界面,您可以在通知欄中添加應用程序,一旦通知欄,用戶點擊就可以打開你的話可以最大限度地一樣。在將您的應用程序通知欄,你可以得到很多教程:

Notification

2
Intent homeIntent = new Intent(this, HomeActivity.class); 
homeIntent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 
startActivity(homeIntent); 

這將啓動HomeActivity,如果仍然在內存中的活動,它只是把它帶到前面。

+0

沒有提到標誌有沒有相同的效果? – Malachiasz

+3

如果在歷史中存在活動的實例,它將不會啓動活動的新實例 –

+0

我看到,我將活動定義爲singleInstance,這就是爲什麼我沒有看到任何區別。 – Malachiasz

相關問題