我面臨兩種問題。一種是現有的活動被覆蓋(當應用程序在前景)。其次是現有的活動沒有被覆蓋,並且不打開另一個相同的活動(當應用程序在後臺中時,)。多次打開同一活動
我在當應用程序處於前臺基於由用戶先前一些配置的規則,其觸發活動(NotificationMessageActivity)的背景具有服務。我的問題是,如果用戶設置兩個規則,如果第一個NotificationMessageActivity被打開,而不關閉現有活動,如果服務觸發另一個活動,現有活動被覆蓋,則會在幾秒鐘內設置兩個規則。有人可以讓我知道如何保持這兩種活動或任何優雅的方式來處理這種情況?試用
Intent.FLAG_ACTIVITY_MULTIPLE_TASK
但沒有運氣。以下是我的代碼。Intent intent= new Intent(this, NotificationMessageActivity .class); intent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra("message",messageBody); startActivity(intent);
下面是我的代碼上的通知水龍頭打開一個活動時,應用程序是在後臺。在這裏,活動不會被打開,並且不會觸發另一個通知中的現有活動。
Intent intent= new Intent(AppScreen.this, NotificationMessageActivity .class); intent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); intent.putExtra("message",notificationMessage); startActivity(intent);
你試過在你的'AndroidManifest.xml'文件中爲'NotificationMessageActivity'指定'singleTop' launchMode嗎? –
@PravinSonawane試過,沒有工作 – rick