什么原因会导致Android应用程序在没有堆栈跟踪的情况下崩溃?

3

我有一个Unity3D游戏,在Galaxy S3 (Android 4.3)上在一个相当明确的位置崩溃,但并非每次都会出现。这是在资产包加载操作期间发生的,因此有点超出我的能力范围。(Unity 4.6.1p4)

logcat在那个时间段显示了很多捆绑标识符的“进程x已死亡”,包括最终我的应用程序的标识符。

E/InputDispatcher( 2347): channel ~ Channel is unrecoverably broken and will be disposed!

并且

Force removing ActivityRecord{43e59278 u0 com.mygamecompany.mygame/com.unity3d.UnityPlayerActivity}: app died, no saved state

但是没有堆栈跟踪。

我的第一个猜测是内存压力,但这不会在日志中显式显示吗?

除了这个原因,还有其他可能导致应用程序在前台意外关闭的原因吗?


曾经遇到过这种问题,原因是导入了一个来自旧版工具包(例如 Unity 3 旧版)的着色器。 - Krzysztof Bociurko
1个回答

0

这种崩溃大部分是本地崩溃,调试日志过滤器并不能总是显示详细信息。

您可以启用详细日志级别过滤器,查看发生了什么。

这篇文章 可能会在您拥有本地崩溃日志后帮助您更加详细地了解情况。


我也没有看到任何本地崩溃,没有SIGSEGV或其他任何东西。我在其他地方看到过它们(现在已经修复),它们会出现在logcat中以及我们的错误报告器中。 - Hendrik Demmer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接