Questão nº 36
Questão de Tecnologia da Informação · FGV TJ-MS 2024 (nº 36)
A analista Luana criou o aplicativo JustNotifica, para dispositivos Android. Em horários determinados, o aplicativo envia notificações locais ao usuário por meio de alarms do Android. Caso o dispositivo seja reiniciado, o aplicativo reagenda o envio das notificações locais de forma transparente ao usuário.
A fim de automatizar o reagendamento de alarms logo após o reinício do dispositivo, o JustNotifica deve possuir a seguinte permissão do Android:
- AQUICKBOOT_POWERON;
- BACTION_BOOT_COMPLETED;
- CLOCKED_BOOT_COMPLETED;
- DRECEIVE_BOOT_COMPLETED; (alternativa correta)
- EACTION_LOCKED_BOOT_COMPLETED.
Resposta comentada
Gabarito Alternativa D
Um aplicativo precisa de uma permissão especial para ser avisado quando o celular liga, para que ele possa executar tarefas importantes, como reagendar alarmes ou notificações que foram perdidos com o desligamento do aparelho.
(A) Incorreta: `QUICKBOOT_POWERON` não é uma permissão padrão do Android para detectar o reinício do dispositivo.
(B) Incorreta: `ACTION_BOOT_COMPLETED` é uma ação (um evento) que o sistema Android envia quando termina de inicializar, não uma permissão que o aplicativo solicita. A armadilha da banca aqui é confundir a ação que o aplicativo quer ouvir com a permissão necessária para receber essa ação. Para ouvir a ação, você precisa da permissão correspondente.
(C) Incorreta: `LOCKED_BOOT_COMPLETED` é uma ação (evento) específica que indica que o dispositivo terminou de inicializar, mas o armazenamento criptografado ainda está bloqueado, e não uma permissão.
(D) Correta: `RECEIVE_BOOT_COMPLETED` é a permissão que um aplicativo Android deve declarar no seu `AndroidManifest.xml` para poder receber o broadcast (aviso) de `ACTION_BOOT_COMPLETED` quando o dispositivo é reiniciado. Sem essa permissão, o aplicativo não consegue ser notificado de que o dispositivo ligou novamente para reagendar os alarmes.
(E) Incorreta: `ACTION_LOCKED_BOOT_COMPLETED` é uma ação (evento), não uma permissão. É similar à `ACTION_BOOT_COMPLETED`, mas ocorre antes do usuário desbloquear o dispositivo.
Fonte: FGV TJ-MS 2024 Técnico de Nível Superior - Analista de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.