ADB和Xcode在升级到Catalina Mac OS后无法检测已连接的设备

7

我已经将我的Mac Mini操作系统更新到Catalina。此后,Android Studio和Xcode无法检测连接的设备。"adb devices"命令未显示任何设备。

但在Android Studio中,它可以检测到我的设备(在故障排除模式下)。但是,它说我的设备未被识别为安卓设备。USB调试已经启用。需要帮助解决这个Catalina问题。

到目前为止,我尝试过以下方法:

  • 安装Xcode命令行工具。
  • 更新Xcode。
  • 更新Android Studio。
  • 更新Android SDK。
  • 使用不同的电缆进行连接。

你需要重新设置路径,因为新的 shell 是 zshell。 - Nick Mowen
@NickMowen 我还没有更新我的账户来使用zshell。在我的情况下,ADB列出了所有的模拟器。但是,连接的USB设备没有显示。Xcode也是一样的。在我升级到Catalina之前,一切都运行得很完美。 - Sivadasan Sarmilan
更换USB电缆解决了我的问题。我的症状是“adb设备”将任何设备的状态列为“正在授权”。我有一个带有4个USB-A端口的USB集线器,连接到MacBook的一个USB-C端口上。我通过使用USB-A-to-USB-C电缆(以及外部键盘和鼠标)将手机连接到该端口。直接使用USB-C-to-C电缆连接手机解决了这个问题。(请注意,在过去的MacBook上,从macOS Mavericks到Mojave以及在此设备上的High Sierra和Mojave上,之前的设置都很好。) - Andy Marchewka
6个回答

3

我认为问题出在操作系统上,因为我在控制台日志中看到了一个错误:

adb@(null): AppleUSBHostUserClient::start: missing entitlement com.apple.appledfr.client

正在等待苹果公司发布补丁。


我有同样的问题。控制台中出现相同的错误。尝试了一切,安装Xcode,不同的电缆,手机等等。苹果知道这个问题吗? - David Vávra
在Google问题跟踪器中报告:https://issuetracker.google.com/issues/143449893 - David Vávra
是的,我也通过https://feedbackassistant.apple.com向苹果报告了这个问题。 - hidayat

1
使用zsh,我添加了
`ANDROID_HOME=~/Library/Android/sdk`
到我的.zprofile文件中(如果您没有此文件,请在主目录中使用`touch .zprofile`创建它),然后重新启动计算机。

你可能需要创建它。 - Siriss

1
在升级Mac OSX之后,打开Xcode安装组件。然后通过USB连接您的Android手机,而不是双Type-C。之后,在手机的开发者选项中执行“撤销USB调试授权”。然后adb设备列表将显示已连接的手机。

1
对于adb,我重新设置了sdk路径后它又开始正常工作了。

export ANDROID_HOME=~/Library/Android/sdk


你使用的是Bash还是Zsh? - Visuddha Karunaratne
我正在使用 zsh @VisuddhaKarunaratne。 - nazmul
在我的情况下,ADB 列出了所有的模拟器。但是,连接的 USB 设备没有显示。Xcode 也是一样的。一切都工作得很完美,直到我升级到 Catalina。 - Sivadasan Sarmilan
如果您使用 zsh 的话,每次开机都需要设置 Android Home,这种情况下切换到 bash 更好。 - nazmul
切换到zsh也没有帮助。 - Visuddha Karunaratne
如果您计划使用zsh作为终端,请将.bash_profile文件中的所有环境数据复制到.zshrc文件中。 - nazmul

1
我在手机的开发者选项中执行了“撤销USB调试授权”,并运行Xcode以安装一些更新。之后,它提供了通常的“您是否想在此设备上允许调试”选项,一切恢复正常。

1

1)前往www.android.com/filetransfer并安装 2)然后在Android设备上撤销USB调试授权 3)确保您正在运行旧的bash(在Catalina中),要做到这一点:chsh -s /bin/bash
4)从USB电缆中拔出Android设备 5)重新启动Mac Catalina 6)重新插入Android设备 7)运行终端(bash) 8)adb设备 它应该会显示,注意:我曾尝试在安装Android文件传输应用程序后运行它,但它从未运行过。话虽如此,当检测到插入电缆时似乎会尝试运行某些东西。免责声明:我不知道这是否适用于您,但这些是我为使其对我起作用而运行的步骤


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