Änderungen an den Typen von Diensten im Vordergrund unter Android 15

Mit Android 15 nehmen wir die folgenden Änderungen an den Typen von Diensten im Vordergrund vor.

Medien werden verarbeitet.

Typ des Dienstes im Vordergrund, der im Manifest deklariert werden soll unter
android:foregroundServiceType
mediaProcessing
Deklarierungsberechtigung im Manifest
FOREGROUND_SERVICE_MEDIA_PROCESSING
Konstante zur Übergabe an startForeground()
FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING
Laufzeitvoraussetzungen
Keine
Beschreibung

Dienst für zeitaufwendige Vorgänge wie die Umwandlung von Medien in verschiedene Formate mit Medien-Assets Das System lässt die Ausführung dieses Dienstes für eine begrenzte Zeit zu. Unter normalen Umständen beträgt dieses Zeitlimit 6 Stunden von jeweils 24 Stunden. Dieses Limit gilt für alle mediaProcessing-Dienste im Vordergrund einer App.

Ihre Anwendung sollte den Medienverarbeitungsdienst im folgenden Szenario manuell beenden:

Wenn das Zeitlimit erreicht ist, ruft das System die Methode Service.onTimeout(int, int) des Dienstes auf. Derzeit hat der Dienst einige Sekunden Zeit, Service.stopSelf() aufzurufen. Wenn der Dienst Service.stopSelf() nicht aufruft, tritt ein ANR-Fehler mit der folgenden Fehlermeldung auf: „A Vorwärtsdienst von <fgs_type> wurde nicht innerhalb des Zeitlimits beendet: <component_name>“.

Hinweis: Service.onTimeout(int, int) ist für Android 14 oder niedriger nicht verfügbar. Auf Geräten mit diesen Versionen speichert das System die App sofort im Cache, wenn ein Medienverarbeitungsdienst das Zeitlimit erreicht. Aus diesem Grund sollte Ihre App nicht auf eine Zeitüberschreitungsbenachrichtigung warten. Stattdessen sollte er so schnell wie angemessen den Dienst im Vordergrund beenden oder zu einem Hintergrunddienst wechseln.

Kamera

Bei Apps, die auf Android 15 oder höher ausgerichtet sind, darf kein Dienst im Vordergrund der Kamera über einen BOOT_COMPLETED-Broadcast-Empfänger gestartet werden. Weitere Informationen finden Sie unter Einschränkungen für BOOT_COMPLETED-Broadcast-Empfänger, die Dienste im Vordergrund starten.

Datensynchronisierung

Apps, die auf Android 15 oder höher ausgerichtet sind, dürfen keinen Dienst für die Datensynchronisierung im Vordergrund über einen BOOT_COMPLETED-Broadcast-Empfänger starten. Weitere Informationen finden Sie unter Einschränkungen für BOOT_COMPLETED-Broadcast-Empfänger, die Dienste im Vordergrund starten.

Medienwiedergabe

Apps, die auf Android 15 oder höher ausgerichtet sind, dürfen keinen Dienst für die Medienwiedergabe im Vordergrund über einen BOOT_COMPLETED-Broadcast-Empfänger starten. Weitere Informationen finden Sie unter Einschränkungen für BOOT_COMPLETED-Broadcast-Empfänger, die Dienste im Vordergrund starten.

Medienprojektion

Apps, die auf Android 15 oder höher ausgerichtet sind, dürfen keinen Dienst für die Medienprojektion im Vordergrund über einen BOOT_COMPLETED-Broadcast-Empfänger starten. Weitere Informationen finden Sie unter Einschränkungen für BOOT_COMPLETED-Broadcast-Empfänger, die Dienste im Vordergrund starten.

Mikrofon

Apps, die auf Android 14 (API-Level 34) oder höher ausgerichtet sind, dürfen keinen Mikrofondienst im Vordergrund über einen BOOT_COMPLETED-Broadcast-Empfänger starten. Weitere Informationen finden Sie unter Einschränkungen für BOOT_COMPLETED-Broadcast-Empfänger, die Dienste im Vordergrund starten.

Telefonanruf

Bei Apps, die auf Android 15 oder höher ausgerichtet sind, darf kein Dienst im Vordergrund für Anrufe über einen BOOT_COMPLETED-Broadcast-Empfänger gestartet werden. Weitere Informationen finden Sie unter Einschränkungen für BOOT_COMPLETED-Broadcast-Empfänger, die Dienste im Vordergrund starten.