Android - Faire une activité vous est en vie avant la cuisson intention?
-
22-09-2019 - |
Question
Je tirais actuellement une intention d'un récepteur de radiodiffusion qui à son tour commence une activité.
Ensuite, à partir du même service une autre intention est tiré à un récepteur de radiodiffusion dans des thats l'activité.
Le problème est que l'activité ne reçoit pas l'intention destinée à parce qu'il est tiré avant qu'il ne soit en vie et la diffusion Reciever est enregistré.
Je me demandais est là de toute façon pour vous assurer une activité est en vie avant d'envoyer un Intent?
Ou toute autre solution?
La solution
Pourquoi ne pas commencer l'activité si elle est pas encore en vie?
Le mécanisme général pour démarrer une nouvelle activité si ce ne est pas ou rodage amener la pile d'activité à l'avant si est déjà en cours d'exécution dans le Background- est d'utiliser la drapeau NEW_TASK_LAUNCH dans le appel startActivity ().
Ce ou simplement donner l'activité une chance de commencer avant de déclencher l'intention.
Sinon, vous pouvez essayer d'utiliser sendOrderedBroadcast pour récupérer des données en arrière la diffusion et peut-être faire une nouvelle tentative.
public abstract void sendOrderedBroadcast (Intent intent, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)