2012-02-02 60 views
0

我想發出通知,點擊它時會將我的應用程序從後臺移到前臺。我使用下面的代碼:當點擊應用程序時發出通知

NotificationManager noma = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); 
PendingIntent pen = PendingIntent.getActivity(Timer.this, 0, intent, 0); 
intent.putExtra("key", "trigerred"); 
String body = "This is a message"; 
String title = "This is title"; 
Notification no = new Notification(R.drawable.ic_launcher, body, System.currentTimeMillis()); 
no.defaults = Notification.DEFAULT_ALL; 
no.setLatestEventInfo(this, title, body, pen); 
noma.notify(uniqueID, no); 

當我點擊,使一個新的意向通知,但我想帶到前面最後創建的意圖。我怎麼能做到這一點?

+0

的可能重複[點擊通知 - 發送到應用程序(http://stackoverflow.com/questions/3172966/click-notification-send-to-application) – 2012-02-02 14:51:33

+0

郵編哪裏你得到你的意圖對象。 – Natali 2012-02-02 14:52:44

+0

請參閱http://stackoverflow.com/questions/6575730/notification-to-restore-a-task-rather-than-a-specific-activity – 2013-03-19 12:22:35

回答

1

您需要在傳遞給getActivity的意圖上設置FLAG_ACTIVITY_SINGLE_TOP標誌。 這會使您在點擊您的通知時回到所有準備就緒的運行活動。

請參閱here以獲取不同啓動標誌的列表。

+0

答案我這樣做,但它不起作用。請給我舉個例子吧? – afb 2012-02-05 11:59:00

+0

抱歉,重新閱讀文檔我認爲您需要設置FLAG_ACTIVITY_NEW_TASK標誌。這個標誌將啓動活動到一個新的任務中,但是如果一個有這個活動的任務都準備好了,那麼它就會把它帶到前臺。 – mcnicholls 2012-02-06 10:37:12

0

試試這個

PendingIntent pen = PendingIntent.getActivity(Timer.this, 0, intent,Intent.FLAG_ACTIVITY_TASK_ON_HOME); 
相關問題