调试Android应用程序崩溃 – 在logcat中没有信息,在连接时没有控制台中的信息

Android Studio 1.5.1
compileSdkVersion 23

这是发生了什么:

应用程序附加到调试器.
我可以点击断点,逐步执行代码.
我有异常登录到控制台.
我正在尝试显示一个对话框片段.

布局xml正确加载,我可以使用findbyid访问UI元素…

问题不在于这个问题的具体细节,更多的是为什么我似乎无法找到有关崩溃发生的任何有意义的信息?

我已经倾倒了adb logcat的输出,并且还打开了Console,记录了所有异常.

除了我的Android手机上显示的应用程序崩溃警报之外,似乎没有任何其他信息报告.

我搜索过,到目前为止我发现的所有东西都指向:

a.)使用设备在调试模式下运行(这样做)
b.)记录异常(这样做)
c.)检查logcat(这样做)

那里还有什么?我不得不遗漏一些东西.

解决方法:

崩溃有各种各样的形式(特别是当你谈论Android时).因此,有很多方法可以检测/分析它们.

1)日志通常是首先要看的东西.但是,您需要确保它们已针对您的应用程序打开(生产应用程序通常已关闭日志),因此请确保它们的日志实际上已在logcat中打印,然后才查找崩溃日志.

2)有时您无法访问日志或无法控制导致崩溃的组件.在这种情况下,Google Play商店中的崩溃报告可以帮助您找出问题所在.但是,该工具并不总是易于使用或可供您使用(自托管应用程序就是一个很好的例子).对于这些情况,像Crashlytics这样的工具可以帮助您获取崩溃数据.

3)一些崩溃来自本地C代码,这些崩溃甚至更难确定.我发现Crashlytics和类似工具在处理这些工具时非常有帮助.

4)不要忘记,有时候应用程序并没有真正崩溃,但操作系统“优雅地”关闭它,因为它占用了RAM.

上一篇:android – 如何在logcat上启用表面flinger事件


下一篇:android – 在adb logcat中过滤特定于应用程序的日志. (日志标记,日志消息,pid,包名称)