Nell'ambito dei limiti di esecuzione in background per Android 8.0 (livello API 26), le app destinate al livello API 26 o successivo non possono registrare ricevitori di trasmissioni per trasmissioni implicite nel loro manifest, a meno che la trasmissione non venga inviata appositamente a loro. Tuttavia, diverse trasmissioni sono esenti da queste limitazioni. Le app possono continuare a registrare listener per le trasmissioni seguenti, indipendentemente dal livello API target dell'app.
ACTION_LOCKED_BOOT_COMPLETED
,ACTION_BOOT_COMPLETED
- Esenti perché questi annunci vengono inviati una sola volta, al primo avvio, e molte app devono riceverli, ad esempio per programmare lavori e sveglie.
ACTION_USER_INITIALIZE
,android.intent.action.USER_ADDED
eandroid.intent.action.USER_REMOVED
- Le autorizzazioni con privilegi proteggono queste trasmissioni, pertanto la maggior parte delle normali app non può comunque riceverle.
android.intent.action.TIME_SET
,ACTION_TIMEZONE_CHANGED
eACTION_NEXT_ALARM_CLOCK_CHANGED
- Le app dell'orologio potrebbero dover ricevere questi annunci per aggiornare le sveglie quando cambiano l'ora, il fuso orario o le sveglie.
ACTION_LOCALE_CHANGED
- Inviato solo quando cambiano le impostazioni internazionali, che non capita spesso. Potrebbe essere necessario aggiornare i dati delle app quando cambiano le impostazioni internazionali.
ACTION_USB_ACCESSORY_ATTACHED
,ACTION_USB_ACCESSORY_DETACHED
,ACTION_USB_DEVICE_ATTACHED
,ACTION_USB_DEVICE_DETACHED
- Quando un'app deve essere a conoscenza di questi eventi USB, non c'è una buona alternativa alla registrazione per la trasmissione.
BluetoothHeadset.ACTION_CONNECTION_STATE_CHANGED
,BluetoothA2dp.ACTION_CONNECTION_STATE_CHANGED
,ACTION_ACL_CONNECTED
,ACTION_ACL_DISCONNECTED
- Se le app ricevono annunci per questi eventi Bluetooth, l'esperienza utente potrebbe non risentirne.
ACTION_CARRIER_CONFIG_CHANGED
,TelephonyIntents.ACTION_*_SUBSCRIPTION_CHANGED
,TelephonyIntents.SECRET_CODE_ACTION
,ACTION_PHONE_STATE_CHANGED
,ACTION_PHONE_ACCOUNT_REGISTERED
eACTION_PHONE_ACCOUNT_UNREGISTERED
- Le app di telefonia OEM potrebbero dover ricevere queste trasmissioni.
LOGIN_ACCOUNTS_CHANGED_ACTION
- Alcune app devono essere a conoscenza delle modifiche apportate agli account di accesso per poter configurare operazioni pianificate per gli account nuovi e modificati.
ACTION_ACCOUNT_REMOVED
- Le app che hanno visibilità su un account ricevono questa trasmissione quando
l'account viene rimosso. Se questa è l'unica modifica all'account su cui l'app deve intervenire, consigliamo all'app di utilizzare questa trasmissione anziché la versione deprecata
LOGIN_ACCOUNTS_CHANGED_ACTION
. ACTION_PACKAGE_DATA_CLEARED
- Viene inviato solo quando l'utente cancella esplicitamente i propri dati dalle Impostazioni, pertanto è improbabile che i ricevitori della trasmissione influiscano in modo significativo sull'esperienza utente.
ACTION_PACKAGE_FULLY_REMOVED
Alcune app devono aggiornare i dati archiviati quando viene rimosso un altro pacchetto. Per queste app non esistono buone alternative alla registrazione per questa trasmissione.
Nota:altre trasmissioni relative ai pacchetti (come
ACTION_PACKAGE_REPLACED
) non sono esenti dalle limitazioni relative all'esecuzione in background. Queste trasmissioni sono talmente comuni che la loro esenzione potrebbe avere un potenziale impatto sulle prestazioni.ACTION_NEW_OUTGOING_CALL
Le app che intervengono in risposta agli utenti che effettuano chiamate devono ricevere questa trasmissione.
ACTION_DEVICE_OWNER_CHANGED
Questa trasmissione non viene inviata molto spesso. Alcune app devono riceverlo per sapere che lo stato di sicurezza del dispositivo è cambiato.
ACTION_EVENT_REMINDER
Inviato dal fornitore di calendario per pubblicare il promemoria di un evento nell'app di calendario. Poiché il fornitore del calendario non sa qual è l'app di calendario, la trasmissione deve essere implicita.
ACTION_MEDIA_MOUNTED
,ACTION_MEDIA_CHECKING
,ACTION_MEDIA_UNMOUNTED
,ACTION_MEDIA_EJECT
,ACTION_MEDIA_UNMOUNTABLE
,ACTION_MEDIA_REMOVED
,ACTION_MEDIA_BAD_REMOVAL
Questi annunci vengono inviati come risultato delle interazioni fisiche dell'utente con il dispositivo, ad esempio l'installazione o la rimozione di volumi di archiviazione, o durante l'inizializzazione dell'avvio, man mano che i volumi disponibili vengono montati. Non sono un caso comune e di solito sono sotto il controllo dell'utente.
SMS_RECEIVED_ACTION
,WAP_PUSH_RECEIVED_ACTION
Le app di destinatari di SMS si basano su questi annunci.