我正在开发一个应用程序,每次运行它时,都会收到以下消息:
不幸的是,MyApp已停止。
我该怎么解决?
关于这个问题-显然是受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应用程序)崩溃时,都会将Stack trace
写入控制台(在本例中为logcat)。该堆栈跟踪包含解决问题的重要信息。
Android Studio
在窗口的底部栏中,单击Logcat
按钮。或者,您可以按alt + 6。确保在Devices
面板中选择了仿真器或设备。接下来,尝试找到以红色显示的堆栈跟踪。可能有很多东西登录到logcat中,因此您可能需要滚动一下。查找堆栈跟踪的一种简单方法是清除logcat(使用右侧的回收站),然后再次使应用程序崩溃。
我已经找到了堆栈跟踪,现在呢?
好极了!您已经解决了一半问题。
您只需分析堆栈跟踪,找出导致应用程序崩溃的原因。
在“ What is a stack trace, and how can I use it to debug my application errors?”中读取堆栈跟踪
我仍然无法解决我的问题!
如果您找到了Exception
及其发生的行,但是仍然找不到解决方法,请随时在StackOverflow上提问。
尽量简明扼要:发布堆栈跟踪和相关代码(例如,在抛出Exception
的行之前增加几行)。
关于java - 不幸的是MyApp已停止。我该如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56946615/