Android 4.1 propose à l'utilisateur une case à cocher pour désactiver les notifications pour une application spécifique.
Cependant, en tant que développeur, nous n'avons aucun moyen de savoir si un appel à notifier a été efficace ou non.
J'ai vraiment besoin de vérifier si les notifications sont désactivées pour l'application actuelle, mais je ne trouve aucun paramètre pour cela dans l'API.
Existe-t-il un moyen de vérifier ce paramètre dans le code?
android
android-notifications
android-notification-bar
Guillaume Perrot
la source
la source
Réponses:
Vous ne pouvez pas à 100%.
Il est demandé dans cette vidéo Google I / O 2012 et le responsable du projet pour les nouvelles notifications déclare que vous ne pouvez pas.
Éditer
Mise à jour 2016: vous pouvez maintenant le vérifier, comme indiqué dans cette vidéo Google I / O 2016 .
Utilisez
NotificationManagerCompat.areNotificationsEnabled()
, à partir de la bibliothèque de support, pour vérifier si les notifications sont bloquées sur l'API 19+. Les versions inférieures à l'API 19 renverront true (les notifications sont activées).la source
NotificationManagerCompat.from(ctx).areNotificationsEnabled()
La réponse de @blundell est correcte mais il y a un changement mineur dans les versions plus récentes.
la source
En fait, c'est assez facile à faire:
la source
Si vous utilisez Xamarin et que vous avez besoin de cette réponse, vous pouvez utiliser ce code:
la source
Il semble qu'il n'y ait aucun moyen d'interroger l'état de notification.
Je recommande ceci:
Pas 100% correct. Mais cela donne un avis.
Par exemple, si l'utilisateur ne clique sur aucune notification d'application pendant 10 à 15 jours, il l'a probablement désactivée
la source
J'utilise cette méthode pour vérifier si les notifications sont activées ou non, les méthodes mentionnées ci-dessus fonctionneront pour vérifier si les notifications sont activées ou non. Mais à partir d' Android 8 pour créer des notifications, nous devons d'abord créer un canal , donc à partir d'Oreo, nous devons vérifier si votre canal de notification est activé ou non .
la source