当Android Studio检测到手机时,logcat中没有可调试的进程。

82

大家好!

我在使用Android Studio时遇到了困惑。

当我将手机连接到电脑并调试应用程序时,Logcat可以检测到我的手机,但我无法选择进程。它显示“没有可调试的进程”,而不是普通的“没有可调试的应用程序”。

我的手机是三星S5(安卓6.0),已经获取root权限。

有什么好的想法吗?

谢谢!


6
使用“工具”->“Android”启用ADB集成。 - E J Chathuranga
对我来说,我不得不在一个Oreo模拟器上运行……这不是我想要的,但这是唯一有效的方法。 - CrandellWS
首先,请确保这不是发布版本。 - Andrew Glukhoff
23个回答

77

我曾遇到相似的问题。在构建应用时,可以在Logcat中选择设备,但无法选择进程(出现相同的"No Debuggable Processes"消息)。

原因是我在发布版本中构建了应用,当我将构建变体更改为调试版本后,我就可以选择进程了。


2
这正是我的问题。谢谢! - haggy
1
请注意,在发布版本中,debuggable 可能也被设置为 true。这是可选的,但根据您的应用程序可能不建议这样做。 - JohnyTex
那是正确的答案!谢谢,我不知道! - Don Diego

54

您需要启用adb integration,只需转到 工具-->Android-->勾选 启用ADB集成

几个版本前它是默认功能,但现在默认情况下已禁用


这是答案。 - E J Chathuranga
12
是的,在最新版的Android Studio中,他们移除了它。请前往 文件-->设置-->构建、执行、部署-->调试器,确保已勾选 日志输出 选项。 - Zinc

42

这种情况偶尔会发生,可以任意尝试以下三个选项:

  1. 重新启动Android Studio(最好同时使缓存失效)
  2. 重启手机
  3. 关闭并重新开启USB调试

电缆怎么样?市面上有些电缆只具备电力传输功能。 - koperko
我可以使用相同的数据线在cmd控制台中使用adb,它可以正常工作。所以......我不知道这种现象的根本原因。 - kimichang
11
对我而言,“重新启动Android Studio”起到了不错的效果。 - Bram
2
尝试了所有这些解决方案后,对我来说仍然没有用。 - Aman Goyal

41
在我的情况下,我使用的是Android Studio 3.1.3版本,我需要在 "文件-->设置--> 构建、执行、部署-->调试器" 中启用 "使用libusb后端" 复选框。

在Google Pixel 2上对我有效。谢谢! - DevOpsSauce
此设置不在上面指定的位置。我已经安装了3.1.3版本,但该设置在该窗口中不存在。 - Adam
1
你救了我的命!对于较新版本的Android Studio,您应该进行一些更新:Android Studio>首选项>构建、执行、部署>调试器。 - Miller Go Dev
1
但在Mac上无法工作。当您尝试调试应用程序时,会出现错误提示。 - aB9
太好了!谢谢。 - FerDensetsu

19

原因之一是在build.gradle文件中将您的应用标记为不可调试。

buildTypes{
    release{
        debuggable false
    }
}

另一个可能的原因是您没有允许ADB集成。 您应该启用Tools->Android->Enable ADB Integration。


阅读了这个答案后,我在自定义签名的调试变体中设置了“debuggable true”,然后它就起作用了。谢谢! - Antonio Papalillo

8
  1. 在Android Studio中,选择“偏好设置”-> “构建,异常,部署” ->“调试器”-> 勾选“使用libusb后端”-> 应用 -> 确定
  2. 在Android Studio中,选择“偏好设置”-> “构建,异常,部署” ->“调试器”-> 取消勾选“使用libusb后端”-> 应用 -> 确定
  3. 哦,现在可以正常工作了...(我的Android Studio版本是4.1)

6

如果你将minifyenabled设置为true,那么你可能会遇到这个错误。因此,如果你运行你的应用程序的发布版或调试版,请确保minifyenabledfalse


6

打开底部的终端窗口.. 输入以下命令:
adb kill-server adb start-server


最佳答案。它对我有用。谢谢。 - Cedriga

5

我最终发现我在运行应用的发布版本。太愚蠢了...


太好了!我不知道我必须在build.gradle文件中明确设置debuggable true - JCarlosR

4
也许你最近启动了Android设备监视器,可能会提示你禁用ADB集成。通常情况下,当你退出Android设备监视器时,ABD集成会自动重新启用。但有时候它不会重新启用,所以请检查工具/Android/启用ADB集成

实际上,这对我来说也没有默认重新启用。 - Louis
很好的提示。我发现我必须使用任务管理器来终止在后台运行的process monitor.exe以恢复正常。 - Hong

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接