Saya memiliki layanan yang sedang berjalan, dan ingin mengirim pemberitahuan. Sayang sekali, objek notifikasi membutuhkan Context
, seperti Activity
, dan bukan Service
.
Apakah Anda tahu cara untuk melewati itu? Saya mencoba membuat Activity
untuk setiap pemberitahuan tetapi tampaknya jelek, dan saya tidak dapat menemukan cara untuk meluncurkan Activity
tanpa pemberitahuan View
.
android
service
notifications
e-satis
sumber
sumber
Jawaban:
Keduanya
Activity
danService
benar - benarextend
Context
jadi Anda bisa menggunakannyathis
sebagai milikContext
AndaService
.sumber
Jenis Pemberitahuan ini tidak berlaku lagi seperti yang terlihat dari dokumen:
Cara yang lebih baik
Anda dapat mengirim pemberitahuan seperti ini:
Kode cara terbaik di atas membutuhkan minimum API level 11 (Android 3.0).
Jika level API minimum Anda lebih rendah dari 11, Anda harus menggunakan kelas NotificationCompat perpustakaan dukungan seperti ini.
Jadi jika level API target minimum Anda adalah 4+ (Android 1.6+) gunakan ini:
sumber
sumber
Yah, saya tidak yakin apakah solusi saya adalah praktik terbaik. Menggunakan
NotificationBuilder
kode saya terlihat seperti itu:Nyata:
dan di sini Layanan:
Saya tidak tahu apakah memang ada
singleTask
diService
tetapi ini berfungsi dengan baik di aplikasi saya ...sumber
Jika tidak ada yang berhasil, coba
getBaseContext()
, alih-alihcontext
atauthis
.sumber
getBaseContext()
skenario ini.