我在互联网上搜索了 ANR 是什么。我也研究了这些引用资料。但我没有得到有关 Android 崩溃的详细信息。
谁能告诉我 ANR(Android not Responding) 和 Android 崩溃之间的区别?
最佳答案
ANR 代表 A应用程序 Not Responding。
如果您在 UI 线程上运行需要很长时间(通常为 5 秒左右)的进程,则会发生 ANR。在此期间,GUI(图形用户界面)将锁定,这将导致用户按下的任何内容都不会被执行。大约 5 秒后,如果线程仍未恢复,则会显示一个 ANR 对话框,通知用户应用程序没有响应,并让用户选择等待,希望应用程序能够最终恢复,或强制关闭应用程序。
崩溃是指应用程序中发生了未处理的异常。例如,如果您尝试设置 EditText
组件的文本,但 EditText
为 null 并且没有 try catch 语句来捕获您的应用程序将崩溃的异常并将被强制关闭。用户将看不到导致崩溃的原因,他们将看到一个对话框,告知应用程序已意外强制关闭,并为他们提供发送错误报告的选项。在此示例中,如果您要查看错误报告,您会看到由 java.lang.NullPointerException
引起的错误。
关于android - Android中的ANR和崩溃有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20213482/