我的应用程序在某些活动上有一个错误:当它重新启动时(当它被杀死然后再次使用多任务打开时),它会崩溃。我认为它与我的单身人士有关,但我不确定。我想查明问题,但我无法调试,因为当我杀死应用程序时调试器停止(我正在使用adb shell am kill <package-name>
)。
有谁知道如何调试此问题? (或者给我一个暗示我的问题可能是什么)
答案 0 :(得分:5)
您可以将以下代码添加到主要活动的onCreate()方法中:
android.os.Debug.waitForDebugger();
这将暂停您的应用,直到调试器附加到该过程。
然后:
答案 1 :(得分:3)
我会使用DDMS(Dalvik Debug Monitor Server(DDMS)来捕获堆栈跟踪等等。在你杀死并重启我们的app之后。
(仅供参考:它已与Android工具集的其余部分一起安装)
虽然它不允许您通过VS / XS调试应用程序,但它可以帮助您固定应用程序的原因区域。从那里我将在故障区域添加日志记录(即旧式printf
样式调试)
http://developer.android.com/tools/debugging/ddms.html
从Visual Studio启动:
来自Xamarin Studio:
答案 2 :(得分:1)
如果您使用单件类预加载某些数据,则在您终止应用程序时将销毁该实例,因此您必须重新加载您的单例所需的数据。
您还可以添加Raygun,它将捕获所有异常并将其发送到您将能够查看异常详细信息的服务器。
你可以从nuget获得它:Mindscape.Raygun4Net 5.3.0