Implizite Übertragungsausnahmen

Im Rahmen der Limits für die Hintergrundausführung von Android 8.0 (API-Level 26) können Apps, die auf API-Level 26 oder höher ausgerichtet sind, Sendeempfänger für implizite Broadcasts in ihrem Manifest nur dann registrieren, wenn die Broadcasts speziell an sie gesendet werden. Einige Broadcasts sind jedoch von diesen Einschränkungen ausgenommen. Anwendungen können weiterhin Listener für die folgenden Broadcasts registrieren, unabhängig davon, auf welche API-Ebene die Apps ausgerichtet sind.

ACTION_LOCKED_BOOT_COMPLETED, ACTION_BOOT_COMPLETED
Ausgenommen, da diese Broadcasts beim ersten Start nur einmal gesendet werden und viele Apps diese Broadcasts empfangen müssen, um beispielsweise Jobs und Alarme planen zu können.
ACTION_USER_INITIALIZE, android.intent.action.USER_ADDED und android.intent.action.USER_REMOVED
Diese Broadcasts werden durch privilegierte Berechtigungen geschützt, sodass die meisten normalen Apps sie ohnehin nicht empfangen können.
android.intent.action.TIME_SET, ACTION_TIMEZONE_CHANGED und ACTION_NEXT_ALARM_CLOCK_CHANGED
Uhr-Apps müssen möglicherweise diese Broadcasts empfangen, um Alarme zu aktualisieren, wenn sich die Uhrzeit, die Zeitzone oder die Wecker ändern.
ACTION_LOCALE_CHANGED
Wird nur gesendet, wenn sich die Sprache ändert. Das ist nur selten der Fall. Apps müssen möglicherweise ihre Daten aktualisieren, wenn sich die Sprache ändert.
ACTION_USB_ACCESSORY_ATTACHED, ACTION_USB_ACCESSORY_DETACHED, ACTION_USB_DEVICE_ATTACHED, ACTION_USB_DEVICE_DETACHED
Wenn eine App über USB-Ereignisse informiert werden muss, gibt es keine gute Alternative, sich für die Übertragung zu registrieren.
BluetoothHeadset.ACTION_CONNECTION_STATE_CHANGED, BluetoothA2dp.ACTION_CONNECTION_STATE_CHANGED, ACTION_ACL_CONNECTED, ACTION_ACL_DISCONNECTED
Die Nutzererfahrung wird wahrscheinlich nicht beeinträchtigt, wenn Apps Broadcasts für diese Bluetooth-Ereignisse empfangen.
ACTION_CARRIER_CONFIG_CHANGED, TelephonyIntents.ACTION_*_SUBSCRIPTION_CHANGED, TelephonyIntents.SECRET_CODE_ACTION, ACTION_PHONE_STATE_CHANGED, ACTION_PHONE_ACCOUNT_REGISTERED, ACTION_PHONE_ACCOUNT_UNREGISTERED
OEM-Telefonie-Apps müssen diese Broadcasts möglicherweise empfangen.
LOGIN_ACCOUNTS_CHANGED_ACTION
Einige Anwendungen müssen über Änderungen an Anmeldekonten informiert werden, damit sie geplante Vorgänge für die neuen und geänderten Konten einrichten können.
ACTION_ACCOUNT_REMOVED
Apps, die Einblick in ein Konto haben, erhalten diese Nachricht, wenn das Konto entfernt wird. Wenn dies die einzige Kontoänderung ist, die in der Anwendung ausgeführt werden muss, empfehlen wir, diese Übertragung anstelle des eingestellten LOGIN_ACCOUNTS_CHANGED_ACTION zu verwenden.
ACTION_PACKAGE_DATA_CLEARED
Wird nur gesendet, wenn der Nutzer seine Daten explizit in den Einstellungen löscht. Es ist also unwahrscheinlich, dass Übertragungsempfänger erheblich die Nutzerfreundlichkeit beeinträchtigen.
ACTION_PACKAGE_FULLY_REMOVED

Einige Apps müssen ihre gespeicherten Daten aktualisieren, wenn ein anderes Paket entfernt wird. Für diese Anwendungen gibt es keine gute Alternative zur Anmeldung für diese Sendung.

Hinweis:Andere paketbezogene Broadcasts (z. B. ACTION_PACKAGE_REPLACED) sind von den Einschränkungen bei der Ausführung im Hintergrund nicht ausgenommen. Solche Broadcasts sind so verbreitet, dass ihre Ausnahmen die Leistung beeinträchtigen können.

ACTION_NEW_OUTGOING_CALL

Anwendungen, die als Reaktion auf Anrufe von Nutzern agieren, müssen diese Übertragung empfangen.

ACTION_DEVICE_OWNER_CHANGED

Diese Nachricht wird nicht sehr oft gesendet. Einige Apps müssen sie empfangen, damit sie wissen, dass sich der Sicherheitsstatus des Geräts geändert hat.

ACTION_EVENT_REMINDER

Vom Kalenderanbieter gesendet, um eine Terminerinnerung in der Kalender-App zu posten. Da er nicht weiß, was die Kalender-App ist, muss dieser Broadcast implizit gesendet werden.

ACTION_MEDIA_MOUNTED, ACTION_MEDIA_CHECKING, ACTION_MEDIA_UNMOUNTED, ACTION_MEDIA_EJECT, ACTION_MEDIA_UNMOUNTABLE, ACTION_MEDIA_REMOVED, ACTION_MEDIA_BAD_REMOVAL

Diese Broadcasts werden als Ergebnis der physischen Interaktionen des Nutzers mit dem Gerät gesendet, z. B. beim Installieren oder Entfernen von Speicher-Volumes, oder im Rahmen der Startinitialisierung, sobald verfügbare Volumes bereitgestellt werden. Sie kommen nicht häufig vor und werden normalerweise vom Nutzer verwaltet.

SMS_RECEIVED_ACTION, WAP_PUSH_RECEIVED_ACTION

Apps von SMS-Empfängern sind auf diese Broadcasts angewiesen.