Problème avec les intentions du système
-
19-09-2019 - |
Question
J'ai un programme qui a une broadcast receiver
qui écoute Phone_State et envoie ensuite un intent
défini par l'utilisateur.
Eh bien, mon problème est que le système envoie également un intent
(celui que je suis en train de le remplacer par mon programme).
Je suis en train de trouver un moyen de CANCEL the systems intent
.
J'ai trouvé que si j'ai une minuterie juste attendre un peu, je peux envoyer mes après les systèmes, mais ce n'est pas très bon, et parfois défaites dans le but de mon programme.
En outre, je ne peux pas définir mon programme par défaut parce qu'il est pas un programme de numérotation complet. Un seul geste de celui-ci.
Quelqu'un s'il vous plaît me aider à trouver comment écouter et annuler un intent/activity
système ....
La solution
Quelqu'un s'il vous plaît me aider à trouver comment écouter et annuler un système intention / activité
Vous ne pouvez pas "annuler" une activité, période.
Vous ne pouvez pas remplacer le composeur.
Si le système Intent
a été envoyé via sendOrderedBroadcast()
, vous pouvez appeler abortBroadcast()
de votre BroadcastReceiver
et des récepteurs à faible priorité n'obtiendrez pas la diffusion. Cependant, je n'ai aucune preuve que ACTION_PHONE_STATE_CHANGED
est une émission ordonnée, et je l'espère sincèrement que ce n'est pas.
Tout ce que vous essayez de faire devrait probablement être accompli par des modifications à votre propre firmware personnalisé.