Tengo un servicio en ejecución y me gustaría enviar una notificación. Lástima, el objeto de notificación requiere un Context
, como un Activity
, y no un Service
.
¿Conoce alguna forma de evitarlo? Traté de crear una Activity
para cada notificación, pero parece fea y no puedo encontrar la manera de iniciar una Activity
sin ninguna View
.
android
service
notifications
e-satis
fuente
fuente
Respuestas:
Ambos
Activity
y, deService
hechoextend
Context
, puede usarlos simplementethis
como suContext
dentro de suService
.fuente
Este tipo de notificación está en desuso como se ve en los documentos:
Mejor manera
Puede enviar una notificación como esta:
La mejor forma El
código anterior necesita un nivel mínimo de API 11 (Android 3.0).
Si su nivel mínimo de API es inferior a 11, debería usar la clase NotificationCompat de la biblioteca de soporte de esta manera.
Entonces, si su nivel mínimo de API objetivo es 4+ (Android 1.6+), use esto:
fuente
fuente
Bueno, no estoy seguro de si mi solución es la mejor práctica. El uso de
NotificationBuilder
mi código se ve así:Manifiesto:
y aquí el Servicio:
No sé si realmente hay un
singleTask
at,Service
pero esto funciona correctamente en mi aplicación ...fuente
Si ninguno de estos funciona, intente
getBaseContext()
, en lugar decontext
othis
.fuente
getBaseContext()
estos escenarios.