我正在开发一个应用程序,每次运行它时,我都会收到消息:
Unfortunately, MyApp has stopped.
我该如何解决这个问题?
<小时/>关于这个问题 - 显然是受到 What is a stack trace, and how can I use it to debug my application errors? 的启发,有很多问题表明他们的应用程序已经崩溃,但没有任何进一步的细节。这个问题旨在指导新手 Android 程序员如何尝试自己解决问题,或者提出正确的问题。
最佳答案
这个答案描述了检索堆栈跟踪的过程。已经有堆栈跟踪了吗?阅读“What is a stack trace, and how can I use it to debug my application errors?”中的堆栈跟踪
问题
您的应用程序退出,因为抛出了未捕获的 RuntimeException
。
其中最常见的是 NullPointerException
.
如何解决?
每次 Android 应用程序崩溃(或任何 Java 应用程序崩溃)时,堆栈跟踪
都会写入控制台(在本例中为 logcat)。此堆栈跟踪包含解决您的问题的重要信息。
Android Studio
在窗口的底部栏中,单击 Logcat
按钮。或者,您可以按 alt+6。确保在设备
面板中选择您的模拟器或设备。接下来,尝试查找堆栈跟踪,它以红色显示。 logcat 中可能记录了很多内容,因此您可能需要滚动一下。找到堆栈跟踪的一个简单方法是清除 logcat(使用右侧的回收站),然后让应用程序再次崩溃。
我找到了堆栈跟踪,现在怎么办?
耶!您的问题已经解决了一半。
您只需通过分析堆栈跟踪来找出究竟是什么导致您的应用程序崩溃。
阅读“What is a stack trace, and how can I use it to debug my application errors?”中的堆栈跟踪
我仍然无法解决我的问题!
如果您找到了异常
以及发生该异常的行,但仍然无法弄清楚如何修复它,请随时在 StackOverflow 上提问。
尝试尽可能简洁:发布堆栈跟踪和相关代码(例如,抛出异常
的行之前的几行)。
关于java - 不幸的是 MyApp 已停止。我该如何解决这个问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60568698/