Perubahan pada jenis layanan latar depan untuk Android 15

Kami melakukan perubahan berikut pada jenis layanan latar depan dengan Android 15.

Media sedang diproses

Jenis layanan latar depan untuk dinyatakan dalam manifes di bawah
android:foregroundServiceType
mediaProcessing
Izin untuk dideklarasikan dalam manifes Anda
FOREGROUND_SERVICE_MEDIA_PROCESSING
Konstanta untuk diteruskan ke startForeground()
FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING
Prasyarat runtime
Tidak ada
Deskripsi

Layanan untuk melakukan operasi yang memakan waktu pada aset media, seperti mengonversi media ke format yang berbeda. Sistem ini mengizinkan layanan ini berjalan dalam waktu terbatas; dalam keadaan normal, batas waktu ini adalah 6 jam dari setiap 24 jam. (Batas ini digunakan bersama oleh semua layanan latar depan mediaProcessing aplikasi.)

Aplikasi Anda harus menghentikan layanan pemrosesan media secara manual dalam skenario berikut:

Jika periode waktu tunggu tercapai, sistem akan memanggil metode Service.onTimeout(int, int) layanan. Pada saat ini, layanan memiliki beberapa detik untuk memanggil Service.stopSelf(). Jika layanan tidak memanggil Service.stopSelf(), ANR akan terjadi dengan pesan error ini: "Layanan latar depan <fgs_type> tidak berhenti dalam waktu tunggunya: <component_name>".

Catatan: Service.onTimeout(int, int) tidak tersedia di Android 14 atau yang lebih rendah. Pada perangkat yang menjalankan versi tersebut, jika layanan pemrosesan media mencapai periode waktu tunggu, sistem akan langsung meng-cache aplikasi. Karena alasan ini, aplikasi Anda tidak boleh menunggu untuk mendapatkan notifikasi waktu tunggu. Sebagai gantinya, aplikasi harus menghentikan layanan latar depan atau mengubahnya ke layanan latar belakang sesegera mungkin.

Kamera

Aplikasi yang menargetkan Android 15 atau yang lebih tinggi tidak diizinkan meluncurkan layanan latar depan kamera dari penerima siaran BOOT_COMPLETED. Untuk informasi selengkapnya, lihat Pembatasan pada penerima siaran BOOT_COMPLETED yang meluncurkan layanan latar depan.

Sinkronisasi data

Aplikasi yang menargetkan Android 15 atau yang lebih tinggi tidak diizinkan meluncurkan layanan latar depan sinkronisasi data dari penerima siaran BOOT_COMPLETED. Untuk informasi selengkapnya, lihat Pembatasan pada penerima siaran BOOT_COMPLETED yang meluncurkan layanan latar depan.

Pemutaran media

Aplikasi yang menargetkan Android 15 atau yang lebih tinggi tidak diizinkan meluncurkan layanan latar depan pemutaran media dari penerima siaran BOOT_COMPLETED. Untuk informasi selengkapnya, lihat Pembatasan pada penerima siaran BOOT_COMPLETED yang meluncurkan layanan latar depan.

Proyeksi media

Aplikasi yang menargetkan Android 15 atau yang lebih tinggi tidak diizinkan meluncurkan layanan latar depan proyeksi media dari penerima siaran BOOT_COMPLETED. Untuk informasi selengkapnya, lihat Pembatasan pada penerima siaran BOOT_COMPLETED yang meluncurkan layanan latar depan.

Mikrofon

Aplikasi yang menargetkan Android 14 (API level 34) atau yang lebih baru tidak diizinkan untuk meluncurkan layanan latar depan mikrofon dari penerima siaran BOOT_COMPLETED. Untuk informasi selengkapnya, lihat Pembatasan pada penerima siaran BOOT_COMPLETED yang meluncurkan layanan latar depan.

Panggilan telepon

Aplikasi yang menargetkan Android 15 atau yang lebih tinggi tidak diizinkan meluncurkan layanan latar depan panggilan telepon dari penerima siaran BOOT_COMPLETED. Untuk informasi selengkapnya, lihat Pembatasan pada penerima siaran BOOT_COMPLETED yang meluncurkan layanan latar depan.