protected void displayNotification(String response) {
Intent intent = new Intent(context, testActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, Intent.FLAG_ACTIVITY_NEW_TASK);
Notification notification = new Notification(R.drawable.icon, "Upload Started", System.currentTimeMillis());
notification.setLatestEventInfo(context, "Upload", response, pendingIntent);
nManager.notify((int)System.currentTimeMillis(), notification);
}
Cette fonction sera appelée plusieurs fois. Je voudrais que pour chaque notification
pour lancer testActivity lorsqu'on clique dessus. Malheureusement, seule la première notification lance testActivity. En cliquant sur les autres, la fenêtre de notification est réduite.
Informations supplémentaires : Fonction displayNotification()
est dans une classe appelée UploadManager
. Context
est passé dans UploadManager
del activity
qui s'instancie. Fonction displayNotification()
est appelée plusieurs fois à partir d'une fonction, également dans UploadManager, qui s'exécute dans un fichier AsyncTask
.
Edit 1 : J'ai oublié de mentionner que je passe la réponse String dans Intent intent
comme un extra
.
protected void displayNotification(String response) {
Intent intent = new Intent(context, testActivity.class);
intent.putExtra("response", response);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
Cela fait une grande différence car j'ai besoin de la "réponse" supplémentaire pour refléter ce qu'était la réponse de String lorsque la notification a été créée. Au lieu d'utiliser PendingIntent.FLAG_UPDATE_CURRENT
le "response" supplémentaire reflète la réponse de String lors du dernier appel à displayNotification()
.
Je sais pourquoi c'est le cas en lisant la documentation sur FLAG_UPDATE_CURRENT
. Toutefois, je ne sais pas comment contourner ce problème pour le moment.