Otras respuestas le indican cuándo se bloquea la aplicación, no la razón por la cual las aplicaciones dejan de responder. Hay una diferencia entre ANR (La aplicación no responde) y un bloqueo.
Se producirá un ANR si está ejecutando un proceso en el hilo de la interfaz de usuario que lleva mucho tiempo, generalmente alrededor de 5 segundos . Durante este tiempo, la GUI ( interfaz gráfica de usuario) se bloqueará, lo que resultará en que cualquier cosa que el usuario presione no se accione. Después de que hayan transcurrido los 5 segundos aproximadamente, si el hilo aún no se ha recuperado, se muestra un cuadro de diálogo ANR que informa al usuario que la aplicación no responde y le dará la opción de esperar, ya que la aplicación lo hará. eventualmente recuperarse, o forzar el cierre de la aplicación.
Un bloqueo es cuando se produce una excepción dentro de la aplicación que no se ha manejado. Por ejemplo, si intenta establecer el texto de un componente EditText , pero EditText es nulo y no hay una declaración try catch para detectar la excepción de que su aplicación se bloqueará y se cerrará a la fuerza. El usuario no verá qué causó el bloqueo, se le mostrará un diálogo que indica que la aplicación se cerró de forma inesperada y le dará la opción de enviar un informe de error. En este ejemplo, si buscara en el informe de error, vería el error causado por java.lang.NullPointerException .
- ¿Qué SDK de terceros nunca dejarías fuera de tu aplicación de Android?
- ¿Hay alguna manera de descargar aplicaciones de Play Store usando bots?
- ¿Qué se entiende por maxSdkVersion en Android utiliza permiso?
- ¿Las aplicaciones de Android se crean con IDE o marcos?
- He descargado mi Google Play Music. ¿Cómo consigo que la aplicación de música Samsung la reconozca y la reproduzca?
Espero que entiendas la diferencia.
Fuente: https://stackoverflow.com/questi…