java - 不幸的是MyApp已停止。我该如何解决?

标签 java android debugging kotlin crash

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


不幸的是,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/

相关文章:

android - 扫描二维码并显示它及其值(value)

c# - Visual Studio 2015 RTM - 调试不工作

php - 跟踪 PHP 中的每个函数调用

java - 将Java String十六进制数转换为int十六进制数

商业产品中的 JavaFX

java - 如何从 .getId() 获取字符串

c# - 如何在每次访问类时设置断点

java - 第一个和第二个 tocen 正则表达式

java - java中如何停止从另一个方法调用一个方法?

android - 如何在某些部分上方生成带有标题的 ListView?