Básicamente, quiero hacer una intención y pasarla a un servicio desde onReceive () de mi BroadcastReceiver.
Hasta ahora siempre usé View.getContext (), pero aquí estoy atascado. ¿Cómo exactamente puedo obtener el contexto para poder usarlo public Intent (Context packageContext, Class<?> cls)
?
Bueno, la respuesta mencionada anteriormente no sirve de nada. Puede utilizar el contexto siempre que esté en onReceive. una vez que su código ha regresado de onReceive, el contexto ya no existe.
Entonces, su declaración de problema dice que desea iniciar el servicio usando este contexto en la creación de su intención y luego llamar a startService con este objeto de contexto. Eso no se puede hacer.
Lea esto sobre lo que se puede y no se puede hacer en el contexto de BroadcastReceiver.
http://developer.android.com/reference/android/content/BroadcastReceiver.html
fuente
En el BroadcastReceiver el
onReceive(Context context, Intent intent)
el método proporciona contexto
entonces
para iniciar el uso de la actividad
context.startActivity(intent);
y para iniciar el uso del servicio
context.startService(intent);
fuente