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?

Était-ce utile?

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)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top