Como parte dos limites de execução em segundo plano do Android 8.0 (nível 26 da API), os apps direcionados à API de nível 26 ou versões mais recentes não podem registrar broadcast receivers para transmissões implícitas no manifesto, a menos que a transmissão seja enviada especificamente a eles. No entanto, várias transmissões estão isentas dessas limitações. Os apps podem continuar registrando listeners para as transmissões a seguir, independente do nível de API direcionado aos apps.
ACTION_LOCKED_BOOT_COMPLETED
,ACTION_BOOT_COMPLETED
- Isento porque essas transmissões são enviadas apenas uma vez, na primeira inicialização, e muitos apps precisam receber essas transmissões, como para agendar jobs e alarmes.
ACTION_USER_INITIALIZE
,android.intent.action.USER_ADDED
,android.intent.action.USER_REMOVED
- As permissões privilegiadas protegem essas transmissões. Portanto, a maioria dos apps normais não pode recebê-las.
android.intent.action.TIME_SET
,ACTION_TIMEZONE_CHANGED
,ACTION_NEXT_ALARM_CLOCK_CHANGED
- Os apps de relógio podem precisar receber essas transmissões para atualizar alarmes quando a hora, o fuso horário ou os alarmes mudarem.
ACTION_LOCALE_CHANGED
- O envio é feito apenas quando a localidade muda, o que não é frequente. Os apps podem precisar atualizar os dados quando a localidade mudar.
ACTION_USB_ACCESSORY_ATTACHED
,ACTION_USB_ACCESSORY_DETACHED
,ACTION_USB_DEVICE_ATTACHED
,ACTION_USB_DEVICE_DETACHED
- Quando um app precisa saber sobre esses eventos relacionados a USB, não há uma boa alternativa ao registro para a transmissão.
BluetoothHeadset.ACTION_CONNECTION_STATE_CHANGED
,BluetoothA2dp.ACTION_CONNECTION_STATE_CHANGED
,ACTION_ACL_CONNECTED
,ACTION_ACL_DISCONNECTED
- A experiência do usuário provavelmente não vai ser afetada se os apps receberem transmissões para esses eventos de Bluetooth.
ACTION_CARRIER_CONFIG_CHANGED
,TelephonyIntents.ACTION_*_SUBSCRIPTION_CHANGED
,TelephonyIntents.SECRET_CODE_ACTION
,ACTION_PHONE_STATE_CHANGED
,ACTION_PHONE_ACCOUNT_REGISTERED
,ACTION_PHONE_ACCOUNT_UNREGISTERED
- Os apps de telefonia de OEM podem precisar receber essas transmissões.
LOGIN_ACCOUNTS_CHANGED_ACTION
- Alguns apps precisam ser informados sobre as mudanças nas contas de login para configurar operações programadas para as contas novas e alteradas.
ACTION_ACCOUNT_REMOVED
- Os apps que têm visibilidade de uma conta recebem essa transmissão quando a
conta é removida. Se essa for a única mudança de conta em que o app precisa
interagir, recomendamos que ele use essa transmissão
em vez da
LOGIN_ACCOUNTS_CHANGED_ACTION
, descontinuada. ACTION_PACKAGE_DATA_CLEARED
- É enviado apenas quando o usuário limpa os dados explicitamente nas configurações. Portanto, é improvável que os broadcast receivers afetem de maneira significativa a experiência do usuário.
ACTION_PACKAGE_FULLY_REMOVED
Alguns apps precisam atualizar os dados armazenados quando outro pacote é removido. Para esses apps, não há uma boa alternativa para se registrar nessa transmissão.
Observação:outras transmissões relacionadas a pacotes, como
ACTION_PACKAGE_REPLACED
, não estão isentas das restrições de execução em segundo plano. Essas transmissões são comuns o suficiente para que haja um possível impacto no desempenho ao isentá-las.ACTION_NEW_OUTGOING_CALL
Os apps que agem em resposta a chamadas feitas por usuários precisam receber essa transmissão.
ACTION_DEVICE_OWNER_CHANGED
Esta transmissão não é enviada com muita frequência. Alguns apps precisam recebê-lo para que saibam que o status de segurança do dispositivo mudou.
ACTION_EVENT_REMINDER
Enviada pelo provedor de agenda para postar um lembrete de evento no app Agenda. Como o provedor não sabe qual é o app de agenda, essa transmissão precisa ser implícita.
ACTION_MEDIA_MOUNTED
,ACTION_MEDIA_CHECKING
,ACTION_MEDIA_UNMOUNTED
,ACTION_MEDIA_EJECT
,ACTION_MEDIA_UNMOUNTABLE
,ACTION_MEDIA_REMOVED
,ACTION_MEDIA_BAD_REMOVAL
Essas transmissões são enviadas como resultado das interações físicas do usuário com o dispositivo, como a instalação ou remoção de volumes de armazenamento, ou como parte da inicialização da inicialização, à medida que os volumes disponíveis são montados. Elas não são uma ocorrência comum e geralmente estão sob o controle do usuário.
SMS_RECEIVED_ACTION
,WAP_PUSH_RECEIVED_ACTION
Os apps de destinatários de SMS dependem dessas transmissões.