Contexte
Pour comprendre le problème, il faut savoir comment cela fonctionne :
Pour presque tout, Android diffuse des "événements" -- comme par exemple boot_completed, SMS reçu, carte SD insérée/enlevée, batterie faible... Signal NFC reçu. Les applications peuvent enregistrer des "écouteurs" avec le système, qui sont liés à des événements spécifiques. Dans votre cas, les applications mentionnées se sont enregistrées pour les événements NFC.
Or, lorsqu'un événement est diffusé et qu'il n'y a pas d'écouteur, rien ne se passe. Si une seule application a enregistré un écouteur, cette application sera appelée. Si plusieurs applications ont enregistré des écouteurs, le système vérifie si l'une d'entre elles est définie comme "Default" par l'utilisateur ; si c'est le cas, c'est elle qui est appelée -- sinon, une fenêtre popup apparaît pour que l'utilisateur choisisse l'application qui doit gérer l'événement. En général, cette fenêtre contient également une case à cocher pour faire de cette application l'application par défaut pour cet événement donné.
Solutions
Comme indiqué, il devrait normalement y avoir une case à cocher, ce qui ne semble pas être le cas dans votre cas. Il semble donc qu'il n'y ait aucune possibilité de définir une action par défaut pour cet événement, quelle qu'en soit la raison. Vous pouvez essayer des applications du playstore qui gèrent les applications par défaut (par ex. Gestionnaire d'applications par défaut ) - mais il est fort probable que cela ne fonctionne pas non plus.
Un deuxième point à examiner serait dans Paramètres Apps Gérer les Apps choisissez l'application de votre choix et vérifiez si la case correspondante est cochée. non grisé -- Si c'est le cas, il suffit de le vérifier. Le plus souvent, il sera grisé, et vous ne pourrez donc rien faire ici non plus.
L'étape suivante nécessiterait un rootage - donc si votre appareil n'est pas rooté, c'est purement informatif pour vous. Comme décrit ci-dessus dans "Background", toutes les applications liées ont un listener enregistré avec le système. Nous devrions donc être en mesure de le désenregistrer. Cela peut être fait, par exemple, avec Autorun Manager PRO (oui, vous aurez besoin de la version Pro - car avec la version gratuite, vous ne pouvez modifier que 2 entrées).
Comme le montre la capture d'écran, cette application peut activer/désactiver les écouteurs, ce qui vous permet d'éviter que des applications soient lancées automatiquement dans des situations où vous ne le souhaitez pas. Ce qui s'applique à la vôtre : Trouvez l'écouteur correspondant, désactivez-le et c'est bon.
Sans Root, la seule possibilité restante est de se débarrasser de toutes les applications sauf une. Vous pouvez désinstaller les autres ou, si vous préférez les conserver (et que vous utilisez Android 4.0 ou une version ultérieure), les désactiver tout simplement dans Paramètres Apps Gérer les Apps Ainsi, en cas de besoin, vous pouvez simplement les réactiver au même endroit.
0 votes
Si ce n'est pas le cas, et que votre appareil est enraciné, vous pouvez rechercher "AutoRun Manager" dans le playstore. Installez-le, et désactivez les écouteurs correspondants des apps qui ne doivent pas répondre. Ce n'est pas une solution vraiment propre (et cela ne durera que jusqu'à ce que l'une de ces applications reçoive une mise à jour, ou que vous installiez une autre application NFC - auquel cas vous devrez répéter cette étape pour l'application concernée), mais cela devrait faire l'affaire : Un seul récepteur = Pas de Popup :)
0 votes
@Izzy : merci (malheureusement mon téléphone n'est pas rooté). Si je comprends bien, les applications s'enregistrent elles-mêmes comme "gestionnaires d'événements" et il n'y a aucun moyen de modifier cela (de la même manière que sous Windows ou Linux). L'idée est que je modifierais une fois le hook pour l'événement "NCF tag read", dans le pire des cas jusqu'à ce qu'une nouvelle application soit installée (ce qui pourrait être OK pour les événements pour lesquels vous avez des applications appropriées et pour lesquels vous n'avez pas besoin de redéfinir régulièrement).
0 votes
On peut l'appeler comme ça. Ce qu'ils enregistrent s'appelle un "auditeur", et le système envoie une "diffusion" à tous les auditeurs enregistrés - mais le principe est le même. Ce que vous podría si aucune des applications liées n'est une application système, il faut utiliser un outil pour reconstruire l'interface utilisateur.
.apk
avec ces écouteurs enlevés. Mais cela pourrait être délicat, et même un peu risqué, car vous devriez le faire pour chaque mise à jour, et vous pourriez même être incapable de mettre à jour une telle application (en raison du "sceau brisé").0 votes
Dans ce cas, je vais supprimer les autres applications enregistrées pour gérer l'événement. Ce n'est pas l'idéal, mais dans ce cas précis, c'est correct. Merci pour les détails.
0 votes
Je suis tout à fait d'accord, ce n'est pas l'idéal. Mais je suis heureux que ce soit au moins une solution viable pour vous. Je vais maintenant résumer tous les détails dans une réponse (pour que ce soit plus facile à suivre pour les autres. N'hésitez pas à upvoter/accepter alors :)