Je veux essentiellement faire une intention et la transmettre à un service à partir de onReceive () de mon BroadcastReceiver.
Jusqu'à présent, j'ai toujours utilisé View.getContext (), mais ici, je suis bloqué. Comment puis-je obtenir exactement le contexte pour pouvoir utiliser public Intent (Context packageContext, Class<?> cls)
?
public abstract void onReceive(Context context, Intent intent)
onReceive
vous donne le contexte. Que veux-tu de plus?
Eh bien, la réponse mentionnée ci-dessus n'est d'aucune utilité. Vous pouvez utiliser le contexte tant que vous êtes dans onReceive. une fois que votre code est revenu de onReceive, le contexte n'existe plus.
Ainsi, votre énoncé de problème indique que vous vouliez démarrer le service en utilisant ce contexte dans votre création d'intention, puis en appelant startService avec cet objet de contexte. Cela ne peut pas être fait.
Lisez ceci ce qui peut et ne peut pas être fait dans le contexte de BroadcastReceiver.
http://developer.Android.com/reference/Android/content/BroadcastReceiver.html
Dans le BroadcastReceiver,
onReceive(Context context, Intent intent)
la méthode fournit le contexte
alors
pour commencer à utiliser l'activité
context.startActivity(intent);
et pour commencer à utiliser le service
context.startService(intent);