通知バーから開かれているアクティビティがありますが、NotificationManager.notify(...)
を実行すると、異なるバンドルがインテントに渡されるため、各通知は同じアクティビティを開きますが、DBから取得します他の情報は互いに。
しかし、いずれかの通知(たとえば、3つの通知がある)に入力しようとすると、それらはすべて、最後のものと同じバンドルのアクティビティーに私を送ります。いくつかのフラグで試した後、どこに問題があるのか本当にわかりません(一部のフラグは、最初のバンドルでアクティビティに通知を送ります)。
私は彼らが the tutorial でそれを使用した方法に従っています。
PendingIntentに同じ操作、アクション、データ、カテゴリ、コンポーネント、およびフラグがある場合、それらは置き換えられます。
状況に応じて、静的な値(0,1,2)またはDBから受信しているデータの行IDのいずれかとして一意のリクエストコードを提供することで、通常これを解決します。
PendingIntent.getActivity(context, MY_UNIQUE_VALUE , notificationIntent, PendingIntent.FLAG_ONE_SHOT);
次に、notify()に同じ一意の値を使用します。
mNotificationManager.notify(MY_UNIQUE_VALUE, notification);