我正在开发一个应用程序,每次运行它时,我都会收到这样的消息:

不幸的是,MyApp已停止。

我可以做什么来解决这个问题?


关于这个问题-显然是受什么是堆栈跟踪以及如何使用它调试应用程序错误的启发?,有很多问题表明他们的应用程序已经崩溃,没有任何进一步的细节。这个问题旨在指导Android新手程序员如何自己解决问题,或者提出正确的问题。


当前回答

首先,您需要检查应用程序崩溃的位置和原因(不幸的是,MyApp已停止)。借助LOG,您可以找出问题所在。

之后,你会发现你的应用程序停止了从你的角度修复它。

其他回答

只有当代码中出现致命异常,停止应用程序的执行时,才会显示此弹出窗口。它可以是任何异常NullPointerException、OutOfMemoryException等。

最好的检查方法是通过Logcat,如果您仍在Android studio中开发应用程序,这是快速读取堆栈跟踪并检查应用程序原因的方法。

如果你的应用已经上线,那么你就不能使用logcat。因此,您可以实现Crashlytics,为您提供任何异常的错误报告。

首先,你检查你的应用程序在哪个点崩溃了(不幸的是,MyApp已经停止。)。为此,你可以使用Log.e(“TAG”,“Message”);,使用这一行,您可以在logcat中查看应用程序日志。

之后,你会发现你的应用程序停止了哪一点,这很容易在你身边解决。

如果你的应用程序由于某种原因在没有良好堆栈的情况下崩溃。试着从第一行开始调试它,然后逐行调试直到崩溃。然后你会得到答案,哪一行给你带来了麻烦。很可能,您可以将其包装到try-catch块中并打印错误输出。

开发期间崩溃

尝试我最喜欢的工具logview来获取日志并在开发过程中分析它们。确保标记/logview和/lib/logwiew.jar作为可执行文件在Linux中运行。

如果你不喜欢它,Android有很多替代的桌面日志查看器。

在野外撞车

集成实时崩溃报告工具(如Firebase Crashlytics),以获取用户设备上发生的未处理异常的堆栈跟踪。

阅读How to Release a Buggy App(和Live to Tell the Tale),了解更多有关处理现场bug的信息。

只需检查日志cat中的错误。

您可以从eclipse中获得logcat选项:

窗口->显示视图->其他->Android->Logcat

日志目录包含错误。

另外,您也可以通过在调试模式下执行应用程序来检查错误。首先通过以下操作设置断点:

右键单击项目->调试为->Android应用程序