Question

Lorsque je clique sur la notification sur la barre d'état, il lance une activité, mais le comportement est étrange. Si mon application est au premier plan et je clique sur la notification de l'intention de notification est tiré une fois. Si mon application est en arrière-plan alors l'intention de notification est tiré deux fois. Si je quitte l'application (par exemple toutes les activités ont été sauté en appuyant sur le bouton de retour), puis l'intention de notification est tiré une fois. Quelqu'un peut-il expliquer ce comportement. L'extrait de code est le suivant:

_notification = new Notification(icon_id, "Ticker Text", System.currentTimeMillis());
_showActivityIntent = new Intent();
_showActivityIntent.setAction(MyActivityName);
_showActivityIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK + Intent.FLAG_ACTIVITY_NO_HISTORY);
_showActivityPendingIntent = PendingIntent.getActivity(context, 0, _showActivityIntent, 0);
_notification.setLatestEventInfo(context, "My title", "My text", _showActivityPendingIntent);
_notificationMgr.notify(notificationId, _notification);
Était-ce utile?

La solution

_showActivityIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

Essayez ceci. il empêchera plusieurs instances de la même activité. u peut mettre cela dans le manifeste aussi

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top