我創建類似下面的內容的通知:的PendingIntent衝突
Intent ni = new Intent(this, SomeActivity.class);
ni.putExtra("somestring", "somedata");
PendingIntent contentIntent =
PendingIntent.getActivity(this, 0, ni,
PendingIntent.FLAG_UPDATE_CURRENT|PendingIntent.FLAG_ONE_SHOT);
Context context = getApplicationContext();
notification.setLatestEventInfo(context,
res.getString(R.string.app_name),
text, contentIntent);
這裏的關鍵是在對意向通知的額外數據。一旦我點擊了通知,它就會啓動SomeActivity,它會啓動活動並提供額外的數據。
但是,如果我退出應用程序,請按住home按鈕,直到最近的活動列表出現,然後選擇再次打開該應用程序,額外的數據仍會通過。有沒有辦法讓我的數據通過只有如果應用程序是通過通知打開的,而不是從最近的活動列表中打開的?
現在最近的活動對話框只顯示新的PendingIntent ...這意味着我有同樣的問題 - 最近的活動對話框仍然使用相同的額外數據啓動相同的活動。 – synic 2010-03-30 02:53:43
只有當有問題的活動從'Notification'開始時才應該發生。 – CommonsWare 2010-03-30 12:10:09
我想我不明白。即使我開始一個完全不同的活動,然後從它開始我的主要活動,我仍然必須使用額外的邏輯,他們仍然傳遞給新的活動。我試着製作這個「LauncherActivity」excludeFromRecents,但是這只是排除了整個應用程序,即使主要活動被指定爲不在清單中排除。 – synic 2010-03-30 14:21:14