ANR
Significa "Application Not Responding". ANR é uma abreviação que descreve um app Android que não responde. Quando um app está sendo executado em um dispositivo Android e para de responder, um evento de "ANR" é acionado. Duas condições podem causar um erro de ANR em um dispositivo Android:
- Um app ativo não responde a um evento de entrada em até 5 segundos.
- A classe BroadcastReceiver não termina a execução após um longo período.
Se ocorrer um erro de ANR no seu dispositivo Android, uma caixa de diálogo aparecerá na tela. A mensagem informará que o aplicativo não está respondendo e perguntará se você deseja fechar o app. Você terá duas opções: ou . Escolher "Aguardar" permitirá que você continue esperando se quiser dar mais tempo ao app. Escolher "OK" fechará o app, e você poderá perder atividades não salvas.
Erros de ANR acontecem por muitos motivos diferentes. Alguns estão relacionados ao desenvolvedor, como uma função mal escrita que executa um loop mais vezes do que o necessário. Outros estão relacionados ao dispositivo, o que significa que o hardware não consegue acompanhar as exigências do app. Por exemplo, se um app estiver renderizando um documento grande, pode levar vários segundos para carregar os dados e renderizar a imagem na tela. Isso pode produzir uma mensagem de ANR, embora o processo possa ser concluído alguns segundos depois.
Desenvolvedores
Como os ANRs proporcionam uma experiência ruim para o usuário, os desenvolvedores procuram evitá-los ou pelo menos reduzir ao máximo o número de ocorrências. O sistema operacional Android registra os ANRs e as atividades correspondentes para ajudar os desenvolvedores a fazer depuração em seus apps. Se um app for distribuído pelo Google Play, os dados de ANR serão enviados automaticamente ao Google. Os desenvolvedores podem consultar os dados de ANR na seção Android Vitals do Console do desenvolvedor.
NOTE: Nenhum dado pessoal é transmitido com os dados de ANR. Apenas a versão do app, a versão do Android, o tipo de dispositivo e os dados da atividade como o (processo atual) são registrados.
Teste seus conhecimentos
