2011-08-09 32 views
0

我有一個正在運行的服務,它將啓動一個活動(MyActivity1)。如果您通常啓動我的應用程序,則MyActivity2是啓動的默認活動。完成意向後的結果

這是我收到

  1. 服務的行爲顯示了通知欄通知
  2. 的通知
  3. MyActivty1推出
  4. 他們完成這樣用戶點擊任何在本次活動我打電話finish()結束活動
  5. 他們被帶回到我的申請,並顯示MyActivity2

在第5步中,我想讓他們返回到主屏幕而不是打開我的活動。這怎麼可能實現?

Context context = getApplicationContext(); 
Intent intent = new Intent(context, ExchangeConfigActivity.class); 
NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); 
PendingIntent contentIntent = PendingIntent.getActivity(context, 0, intent, 0); 
CharSequence from = getString(R.string.app_name); 
CharSequence message = "Exchange Account - Setup Required"; 
Notification notif = new Notification(R.drawable.icon,"Message", System.currentTimeMillis()); 
notif.setLatestEventInfo(getApplicationContext(), from, message, contentIntent); 
notif.flags = Notification.FLAG_AUTO_CANCEL; 
nm.notify(id, notif); 
+0

「主屏幕」是指Android Home-Screen? –

回答

0

發生什麼事情是MyActivity2在MyActivity1啓動時被推送到後臺。然後,當MyActivity1完成後,它會彈出MyActivity2。

如果您指的是Android主屏幕,您只需完成()MyActivity2,當它處於焦點之外時,就像onPause()一樣。

+0

這將改變應用程序的行爲,因爲每次關閉屏幕或其他應用程序進入前臺時,應用程序都會結束。 – user629126

+0

然後在其他地方完成()。 –

0

我想你想在通知的意圖開始一個新的任務堆棧:

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 

這樣一來,當用戶反悔的通知,the'll回到主屏幕。

+0

我將此添加到意圖中,但行爲不會改變。這仍然返回到我的應用程序。 – user629126