Android应用程序缺少Android Studio中的调试信息

时间:2014-11-25 06:56:45

标签: android debugging android-studio

我正在尝试调试我使用Android Studio编写的应用程序,但我似乎无法从Android Studio中获取任何有用的调试信息" Debug& #34;视图。我正在使用看起来很糟糕的" Debug"启动我的应用程序。图标,但"调试" view没有任何用处(例如,我的应用程序没有堆栈帧):

screenshot

即使我的应用程序崩溃,我也无法获得任何有用的信息。我记得,ADT插件会自动让你掉线导致崩溃。

我是否需要做任何其他事情才能使我的应用程序" debuggable"在Android Studio?我也尝试在我的AndroidManifest.xml中强制android:debuggable="true",但无济于事。 Android Studio似乎附加到正在运行的进程(应用程序显示"附加到调试器"消息在首次启动时几秒钟。)

2 个答案:

答案 0 :(得分:5)

有些事情需要检查:

  • 如果您的app-debugger正在运行并在正常断点处停止,则可能需要设置异常断点:
    • 打开调试器
    • 按"查看断点"
    • 通常,应该有一个名为&#34的断点;任何异常"带有复选框"捕获异常"和#34; Unchaught exception"。如果没有,请自行添加异常断点并指定希望调试器停止的异常类型(您可以在异常类名中使用通配符,例如* Exception)。
  • 如果您的app-debugger无法正常工作,请检查以下选项:

    • 检查您是否在设备的开发人员选项中启用了USB调试
    • 检查您是否已将计算机授权为设备开发人员选项中的开发计算机(如果不确定,请从开发人员选项页面中清除授权列表并重新连接设备)
    • 检查您的开发机器是否只有一个adb-server-process在后台运行(如果更多,请使用流程管理器终止所有这些流程并使用" adb start-server&#34重启;)
    • 添加" debuggable true"到build.gradle中的debug-buildType:

      buildTypes {
          debug {
              debuggable true
          }
          ...
      }
      
  • 如果您的应用调试器仍无法正常工作,请重新启动计算机并为您的设备重新安装adb-drivers。确保没有与多个连接设备激活的冲突驱动程序(可能一次只连接一个)。

注意:即使异常断点有效,它们也可能根本没用,具体取决于崩溃的类型。大多数情况下,您将在Zygote异常处理程序中停止调试器,您将无法获得有用的信息或堆栈跟踪。 在这种情况下,最简单的方法是让调试器在没有调试器的情况下恢复或重现崩溃,并在应用程序的logcat输出的ERROR-loglevel中检查logcat-output中的堆栈跟踪。这些堆栈跟踪应该具有可单击的行信息,因此您可以在应用程序的源代码中的相关代码行上设置正常断点来分析问题。

答案 1 :(得分:0)

更新Android工作室后,这个问题就消失了。不确定是什么问题。