ChatGPT解决这个技术问题 Extra ChatGPT

Android Studio - 没有可调试的应用程序

我尝试调试我的 Android 应用程序的发布版本,但 Android Studio 未能附加调试器。 (它找不到我正在运行的应用程序的 Android 进程)。

在设备控制台下,只有一条消息:

没有可调试的应用程序

拔下设备并关闭/打开 ADB 集成可修复此问题,但这应该在 Android Studio 中修复!
这在下面的答案中没有提到,所以在确保 ADB Integration 已启用并且仍然有问题之后,在你去下面的答案之前,首先尝试最简单的一个:Invalidate Caches / Restart...
Redmi Note 3(棒棒糖)由于未知原因无法进行分析,但其他设备还可以。

A
Auras

您还应该激活 Tools->Android->Enable ADB Integration。


如果您打开将它偷走的设备监视器,这也有助于重新获得 adb 日志记录
如果已启用,则禁用并重新启用也可以解决
同样重要的是要注意您没有运行其他 IDE,例如 Eclipse。如果是这样,您可能需要在关闭 Eclipse 后重新启动 AS。
谢谢!一定有什么东西在我身上禁用了它。它可能是 Android 设备监视器。
这现在是当前 Android Studio 1.3x 版本中的默认设置,在我的案例中它甚至没有接近解决方案。如果这对您没有帮助,请查看此 wiki stackoverflow.com/questions/32163302/…
T
Teovald

解决方案是在应用程序的 gradle 文件中打开可调试标志 (debuggable true):

apply plugin: 'com.android.application'

android {
    compileSdkVersion 19
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "org.example"
        minSdkVersion 14
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }

    buildTypes {
        debug {
            debuggable true
        }
    }
}

在 Android Studio 将 Gradle 与项目文件同步并重新安装应用程序后,调试开始工作。


您通常不想使您的发布版本可调试。最好在 debug buildType 下设置 debuggable 标志
我不明白,它曾经在没有这个的情况下在 Android Studio V1.1 及之前工作,但从 V1.2 开始它不再工作了。所以谢谢你的小费!也感谢您 @jb11 对 buildType 调试的建议。
A
A. Adam

https://i.stack.imgur.com/Gxiur.png

只需单击“错误”图标,您就可以开始了。

我遇到了同样的问题,并且成功了。希望它可以帮助某人。


由于某种神奇的原因,我无法打开 ADB 集成,这很有效。
l
lingyfh

如果是 intellij 或 AS,你应该确保你的 Build Variants Setting 是调试的。

https://i.stack.imgur.com/eZD2X.png


n
nlmm01

检查是否启用了 Tools->Android->Enable ADB Integration。在大多数情况下,禁用和重新启用它也可以工作。


禁用和重新启用它对我来说非常有效,因为它已经启用,但自从我上次更新 Android Studio 以来一直没有工作。
K
Kushal

我想在以上 2 个答案中加一点:

如果 Eclipse IDEAndroid Studio 并行运行,则上述答案可能对您没有帮助。在 Gradle 文件中设置 debuggable true 后,可调试的应用程序将不会刷新事件。

因此,关闭 Eclipse IDE 并检查 Android Studio。可调试的应用程序将刷新。

谢谢


或者它也可以是 2 个 Android Studio 实例。需要确保只有一个在运行。
O
Ojonugwa Jude Ochalifu

信不信由你,即使您遵循此处的所有建议,有故障的 USB 电缆也会导致此问题持续存在。更换我的 USB 电缆为我做了这件事


是的,您也可以尝试拔下并插入设备的另一个 USB 端口
A
AlDroid

当我想在生成一个签名 APK 后调试我的应用程序时发生这种情况,所以我不得不将 Build Variants 值从发布更改回调试。


A
Anish Mittal

执行此操作的多个选项:

1.工具->Android->启用ADB集成

或者

2.Build->Clean Project,Build->Rebuild Project。然后是“adb kill-server”和“adb start-server”

以上之一将起作用。


K
Kurt Van den Branden

您还应该在您的 AndroidManifest.xml 文件中检查您的应用程序标记中没有像 android:debuggable="false" 这样的选项。

<application
        android:icon="@drawable/icon"
        android:label="@string/app_name"
        android:debuggable="false">

要使其正常工作,只需删除此选项。


O
Otaroid

Ctrl+shift+A 键入 Enable ADB Integration 点击切换完成


嗨 Otaroid,欢迎来到 Stack Overlow。请记住,您正在回答一个老问题,因此原始问题的作者可能很久以前就以一种或另一种方式解决了他们的问题。为了使您的答案有用,对于在网站上搜索类似问题的解决方案的其他读者来说,这应该是一个很好的答案;所以我建议添加更多的解释和细节,也许还有官方文档的链接,以真正证明为什么这种技术是解决这类问题的最佳解决方案。
E
Enaoi

https://i.stack.imgur.com/TObXt.png


V
Vinayak

工作解决方案

1.如果一切都正确,则以调试方式运行测试,并且您可以调试。可以在列表中看到

https://i.stack.imgur.com/UqsUT.png

2.如果它说应用程序不可调试然后改变gradle

https://i.stack.imgur.com/wB3c1.png

重复步骤 1

4 .如果没有切换工具->Android->启用ADB集成并启用它。

https://i.stack.imgur.com/DhNtR.png

5.重启adb服务器

https://i.stack.imgur.com/TSUpD.png

6.断开连接并连接设备它会列出

https://i.stack.imgur.com/wgWUI.png


M
Muhammad Naderi

信不信由你,如果您在 Windows OS 上,区域设置也与此有关。

确保您的 Regional Format 使用英语(美国)或实际上使您的日历非 unicode 的任何设置(例如,不在波斯日历或阿拉伯语...)

显然,Android Studio 或 ADB 开发团队中的某个人在他们的代码中使用了 .toString(),而不考虑文化!


您是否找到了使波斯日历和 AndroidStudio 一起工作的任何解决方案?
还没有......也许我们应该为 Jetbrains 开一个问题?
我解决了这个问题。我从 regedit 备份了区域设置,并应用了 en-US 和 fa-IR 设置。然后我编写了一个运行 3 个命令的批处理文件: 1. 将注册表更改为 en-US 设置; 2. 运行 Android Studio studio64.exe 文件和 3. 将设置恢复为 fa-IR 区域设置。
然后在 AS 快捷方式中,我打开该批处理文件,而不是打开 studio64.exe。它会打开一个 cmd 窗口并为我解决问题并立即关闭。而已 !
但我也认为我们必须为 JetBrains 打开一个问题,以便在下一个版本中解决这个问题。
E
Eduardo Dennis

单击绿色错误,但请确保将下拉菜单设置为应用程序,否则将不会部署您的应用程序,只需说一下。

连接到目标VM,地址:'localhost:xxx',传输:'socket'

https://i.stack.imgur.com/Uprr8.png


f
frankelot

确保您的构建变体设置为“调试”。并且调试在您的 build.gradle 文件中有 debuggable true


佚名

我使用 Mac 运行 Android Studio。我同意@Kushal,不过我没有打开 Eclipse。我关闭了可能使用相同 Gradle 的 Parallels Desktop 和其他应用程序。