更新 所谓的重复是一个在执行Run时陷入“等待调试器”的问题,而这个问题是在执行调试时陷入“等待调试器”,产生问题的步骤是不同的,解决方案也是不同的。


每当我尝试使用Android Studio的调试功能,运行状态总是卡在:

Launching application: com.astrotek.parashoot.debug/com.astrotek.ptpviewer.StarterActivity.
DEVICE SHELL COMMAND: am start -n "com.astrotek.parashoot.debug/com.astrotek.ptpviewer.StarterActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.astrotek.parashoot.debug/com.astrotek.ptpviewer.StarterActivity }

而我正在调试的设备(三星Galaxy S3 Android 4.3)将显示

从Android Studio 0.8.8一直到1.0都是如此。在同一台计算机上,我可以在同一台设备上使用Eclipse执行调试,而不会出现任何问题。

问题是如何让Android Studio调试工作?


更新:在运行Android 5.0的Nexus 7(2013)上调试时也会发生同样的事情;在另一台机器上进行测试得到了相同的结果。我不是唯一一个遇到这个问题的人:-/


更新:打开赏金,因为这个问题太烦人了。即使重新安装应用程序也解决不了问题。Nexus 5运行Cyano, Win7 64。亚行的日志很能说明问题:

8568-8568/it.myapp:myprocess W/ActivityThread﹕ Application it.myapp is waiting for the debugger on port 8100...
8568-8568/it.myapp:myprocess I/System.out﹕ Sending WAIT chunk

此外,我找不到一个简单的方法来断开或重置ADB连接在Android Studio。


当前回答

有时这是因为在构建过程中。Gradle配置你必须设置节点:

  debug {
            debuggable true
        }

当你必须准备签名的apk时,把它改回false。

问候

其他回答

确保您的活动构建变体是调试的。

如果你也想让你的版本变体APK可调试,那么在应用级构建中做一个简单的改变。gradle -

buildTypes {
        release {
            debuggable true
            /*Your rest code*/
        }
    }

它发生在我身上,它停留在“等待调试器”,当我意外地试图调试一个发布版本时,有时它警告说这不是一个调试版本,而其他时候它默默地停留在“等待调试器”。

解决方案显然是切换到调试构建

得到它根据这个解决方案:https://youtrack.jetbrains.com/issue/IDEA-166153 我打开<project dir>/.idea/workspace.xml替换了所有的 <option name="DEBUGGER_TYPE" value="Auto" />次出现 <option name="DEBUGGER_TYPE" value="Java" /> 重新启动Android Studio

显然,这是另一个Android Studio,或者更确切地说,是ADB的错误。

只需使用此命令禁用它。 Adb shell clear-debug-app

OR

确保没有什么可等待的,在每次测试运行之前自动从设备卸载,使用Gradle的卸载任务,如前所述: stackoverflow.com/Auto安装前卸载?

如果所有这些都失败了,可以通过应用程序的系统设置尝试“清洁存储”。