Android: l'Utilisation de l'AUTO-ANNULER une notification lorsque votre application est en cours d'exécution en arrière-plan
J'ai regardé tous les autres AUTO-ANNULER-pas-de travail des questions ici, et ils semblent tous impliquent des erreurs que je ne fais pas. J'ai essayé les deux
builder.setAutoCancel(true);
et
Notification notif = builder.build();
notif.flags |= Notification.FLAG_AUTO_CANCEL;
Aucun ne fonctionne.
Je suis en utilisant NotificationCompat depuis mon API minimum est de 8. Voici mon code complet. Dans cette notification, je ne suis pas à l'appel d'une intention, comme je n'ai pas besoin de l'utilisateur de faire quoi que ce soit.
NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
builder.setContentTitle(getString(R.string.app_name) + ": my title");
builder.setContentText(message);
builder.setSmallIcon(R.drawable.notification_icon);
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.prog_icon);
builder.setLargeIcon(bitmap);
builder.setAutoCancel(true); //dismiss notification on user click
NotificationManager notiManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
notiManager.notify(MY_NOTI_MANAGER_ID, builder.build());
La notification s'affiche parfaitement. Vous pouvez la glisser pour la désactiver. Mais simplement en le touchant, il n'écarte pas la notification. Il vient s'allume et s'y maintenir.
Certaines différences possibles entre mon code et les autres " posté ici:
1) je suis en utilisant NotificationCompat (qui ne devrait pas faire une différence, mais nous avons entendu dire que avant).
2) Depuis que mon avis est simple, je n'attache pas une intention.
S'il vous plaît laissez-moi savoir si vous avez des idées.
Edit: Mon but est de faire disparaître une notification sans posant de front mon fond app.
Vous devez vous connecter pour publier un commentaire.
Donc, apparemment, vous ne besoin d'une attente d'intention.
À Android - gestionnaire de notification, d'avoir un avis sans intention, j'ai trouvé une solution qui saisit l'application active comme l'attente de votre intention de sorte que vous n'avez pas à démarrer votre propre activité afin de faire disparaître la notification).
Je viens d'ajouter les deux lignes de code suivantes (à droite après le réglage de l'auto-annuler):
Il a travaillé beaucoup. Je dirais que si vous ne voulez pas que votre activité de redémarrer votre ordinateur comme un résultat de l'utilisateur qui clique sur votre notification, alors c'est votre meilleure option.
Vous semblent être à côté de la
PendingIntent
etsetContentIntent()
appel. Je crois que c'est nécessaire pour l'auto-annuler le travail.Voici quelques
Notification
-affichage de la logique de cet exemple de projet qui fonctionne:Hai cher ami, si vous voulez montrer non résiliables
notification(non résiliables pour les utilisateurs) pour un particulier
et après que vous avez besoin de clair (comme le lecteur de musique) vous pouvez utiliser cette.