当应用崩溃并且logcat没有显示错误时该怎么办

时间:2012-05-03 12:58:51

标签: android logcat

该应用程序在模拟器中运行良好,但在手机上安装后,每次启动时都会崩溃,并且logcat没有显示任何错误。

当这样的事情发生时,我该怎么做?

6 个答案:

答案 0 :(得分:13)

我建议您更轻松地解决问题:

在电话上以调试模式从eclipse运行应用程序。它将使其在调试模式下运行。您很可能会获得更多的调试输出。

  1. 打开手机中的ADB。
  2. 将手机连接到PC
  3. 从eclipse运行为“Debug Configuration”。
  4. 它应该从您的手机运行,Eclipse会在运行之前首先要求您选择。

  5. 打开调试模式(注意:此不是我们所指的'ADB连接'),它将启用应用程序的进一步记录并且不会通常不做垃圾收集。

    (如果应用程序被强制在调试模式下工作,您会注意到'等待调试连接'对话框。)

    例如:它使异步线程继续运行并且不会停止运行。原油和你的情况无关。但仅作为一个例子。

    因此,由于手机中的应用程序强制在调试模式下运行,因此它会将具有详细错误的logcat下载到特定线程。

    但是,当它与Eclipse中的“Debug As”运行配置一起使用时,调试模式更好地使用。请记住,它将自动打开调试应用程序模式(并且还有对话框),logcat将显示更多详细信息并加上将断点出现的错误,在它们发生的顺序中。


    关于阿瑞斯所说的, 如果要直接调试流程,

    1. 您可以转到Eclipse中的DDMS面板,
    2. 在右侧标签菜单设备
    3. 选择要调试的进程。然后单击绿色符号(说明,开始调试过程)
    4. 如果你在eclipse工作空间中有源代码,它会在它中断时自动转到源。

答案 1 :(得分:1)

安装AndroidSystemInfo之类的工具,可以在手机上显示日志文件 - 即使您不在主机上也是如此。

Android不会留下任何痕迹,这是非常不寻常的。

您的应用可能需要手机没有的功能(例如相机或gps或nfc)吗?

答案 2 :(得分:1)

在Eclipse中,您应该转到DDMS,然后在Devices面板中单击设备的名称或android.os。并将您的设备调试为调试模式。

答案 3 :(得分:0)

使用您自己的日志来跟踪代码块导致崩溃,或者只是调试它。

答案 4 :(得分:0)

  1. 您可以重置adb(在设备中 - >查看菜单 - >重置adb)
  2. 单击所选的在线设备/模拟器以显示logcat
  3. 断开电缆并再次连接。 (或重新启动模拟器)
  4. 重启Eclipse

答案 5 :(得分:0)

我重新启动了我的模拟器并清理了我的构建。这摆脱了我正在进行的非日志记录和虚假崩溃