153

我有一个装有 Android 4.3 的 Nexus 4,我正在尝试将设备连接到装有 Windows 7 64 位的计算机。

我安装了最新的驱动程序和最新adb版本。我想我几乎尝试了所有方法,但仍然收到以下消息:

C:\Program Files (x86)\Android\sdk\platform-tools>adb devices
List of devices attached
007667324ccb229b        unauthorized

这个错误的原因是什么?

4

26 回答 26

263

我有类似的情况。这是我所做的:

尝试选中和取消选中设备中的 USB 调试选项。(如果不起作用,请尝试拔下/插入 USB)

在某些时候,设备应该会显示一个消息框,询问您是否授权计算机。单击“是”后,设备将被授权并挂起连接。

于 2013-08-24T02:35:22.527 回答
57

我在不删除任何键的情况下解决了这个问题。就是这样:

  1. 我的设备通过 USB 连接到我的电脑
  2. 我确保 Eclipse 和 android 设备监视器没有运行。
  3. 在命令行提示符下键入:adb kill-server
  4. 在命令行提示符下键入:adb start-server
  5. 重新启动 adb 后,我的设备上提示我允许授权。
于 2013-10-16T01:05:21.743 回答
43

С将 USB 连接模式从 MTP 更改为相机(适用于 Nexus 7),或者可能更改为大容量存储或其他东西(适用于其他设备)。这个选项通常在Settings -> Storage. 然后再次连接设备,您将获得授权对话框。

众所周知,MTP 会干扰 USB 调试——这两者在大多数旧设备上根本无法协同工作。Nexus 7 和许多较新的设备确实允许两者一起工作,但这个特殊问题表明它还不是那么顺利。

adb奖励 - 何时表现不佳的清单:

  • adb kill-server其次是adb start-server
  • (在设备上) Settings -> Developer Options -> USB Debugging ——关闭和打开
  • [Windows]确保你有正确的驱动程序(你最好的选择是Koushik Dutta 的 Universal Adb 驱动程序——可以处理任何设备)
  • [Windows]尝试关闭所有花哨的即时反恶意软件扫描程序/防火墙
  • [Linux]确保您有正确的 UDEV 规则/etc/udev/rules.d/51-android.rules(同样,通用解决方案:https ://github.com/snowdream/51-android )
  • [Linux]确保下面的所有~/.android内容都归你所有,而不是root(并赞成这个答案
  • 重启设备(是的,令人惊讶的是,这也是一个有效的措施)
  • (显然)重新插入电缆,尝试不同的电缆,不同的端口,移除任何延长线
于 2014-01-11T21:23:19.130 回答
24

我认为当设备尝试显示请求许可的屏幕时出现错误,因此它没有出现。

这对我有用(命令在 中给出adb shell):

  1. rm /data/misc/adb/adb_keys;
  2. 我通过电子邮件将公钥(~/.android/ 中的 adbkey.pub)从我的计算机发送到我的设备;
  3. 调用stop adbd
  4. cat adbkey.pub >> /data/misc/adb/adb_keys(授权自己);
  5. start adbd(使用新密钥重新启动 adb)。
于 2013-08-30T23:19:32.463 回答
17

确保您已启用 USB 调试后,解锁您的手机并通过 USB 将其插入您的机器。然后,您将被要求授权与您连接的计算机进行通信。它还将显示计算机的 RSA 密钥指纹。

在此处输入图像描述

接受它,你就可以走了!

于 2014-05-15T12:50:27.290 回答
11

1.) 删除桌面机器上的 ~/.android/adbkey

2.) 运行命令“adb kill-server”

3.) 运行命令“adb start-server”

现在应该提示您接受调试密钥。

于 2013-09-18T16:02:29.333 回答
9

与 Flavio 的回答(https://stackoverflow.com/a/18542792/1064996)类似,这与~/.android(在主机上,而不是手机上)中的文件有关。

我没有~/.android/adbkey,但我确实有,~/.android/debug.keystore而且我的整个~/.android目录都归 root 所有。我删除了密钥库文件并将所有权更改为我(sudo chown -R $USER ~/.android),杀死了 adb 服务器并插入了我的手机,它工作了。

这可能是所有权的事情。确保您具有读/写权限~/.android

于 2014-04-22T22:44:49.623 回答
8

对于我的三星 S3,我必须进入手机上的开发人员选项,取消勾选“USB 调试”复选框,然后重新勾选它。

然后会出现对话框,询问您是否要允许 USB 调试。

完成此操作后,“ adb devices”命令不再显示“未授权”作为我的设备名称。

(几个月后..)

实际上,连接我的Galaxy Tab S设备也是如此,并且菜单选项与 Android 4.4.2 的位置略有不同:

在此处输入图像描述

于 2014-06-18T14:20:43.890 回答
8

四个简单的步骤

./adb kill-server ./adb start-server

重新插入设备,解锁并接受新密钥

于 2013-09-14T19:18:41.563 回答
7

这是我的步骤版本:

  1. 确保 adb 正在运行
  2. 在设备中转到设置 -> 开发人员选项 -> 撤销 USB 调试权限
  3. 断开设备
  4. 在 adb shell 类型 > adb kill-server
  5. 在 adb shell 类型 > adb start-server
  6. 连接设备

如果 adb shell 显示空主机名,则重启设备

于 2015-06-16T13:02:01.657 回答
7

有同样的问题。不确定这些对于 Windows 是否与我使用 OS X 设备的步骤相同,但您可以尝试:

  1. 重新启动手机进入恢复模式。
  2. 将其连接到您的计算机。
  3. 打开终端并输入:

    cd ~/.android
    adb push adbkey.pub /data/misc/adb/adb_keys
    
  4. 全部完成!只是adb shell reboot感受力量!

于 2016-04-08T19:16:53.773 回答
6

在 Windows 8.1 上的 Nexus 5 上获取授权令牌时遇到同样的问题。我没有安装最新的 adb 驱动程序 - 这在设备管理器中可见。在此处从 Google 下载最新的 ADB USB 驱动程序:http: //developer.android.com/sdk/win-usb.html

更新了设备管理器中的驱动,但是启用/禁用 USB 调试和拔/插 USB 仍然不起作用。最后,一旦驱动程序更新,其他答案中提到的“adb kill-server”和“adb start-server”就可以解决问题。

于 2013-11-05T02:12:52.763 回答
4
  1. 确保 adb 是最新的
  2. 确保您使用的是谷歌 USB 驱动程序:http: //developer.android.com/tools/extras/oem-usb.html
  3. 确保您的 ANDROID_SDK_HOME 环境变量设置为正确的路径
于 2013-11-02T03:04:57.770 回答
2

我没有在手机上弹出 RSA 指纹。

我不得不删除C:\Users\<userName>\.android\adbkeyadbkey.pub文件,然后杀死并重新启动 adb 服务器。

adb kill-server
adb start-server

我不得不停止并重新启动调试器并在 PTP 模式下连接为 USB。

因为 RSA 授权密钥存储在此路径中,所以终止并重新启动 adb 服务器没有帮助。

于 2016-04-27T07:55:47.197 回答
1

对我来说,一旦我禁用了 MTP(在设置>存储>菜单>MTP),我终于得到了 RSA 提示

于 2014-02-14T13:39:32.900 回答
1

我重新安装了usb驱动程序并确保我没有使用USB 3.0端口。

然后我关闭了 eclipse 并杀死并重新启动adb

立即在电话上提示允许计算机访问。接受后我重新启动了 eclipse,现在我的 Galaxy S3 出现在设备设备管理器中。

于 2014-01-12T21:04:20.143 回答
1

这种旧帖子,在大多数情况下,我认为得到最多支持的答案对人们有用。

在 GPE HTC M8 上的 Lollipop 中,我仍然遇到问题。以下步骤对我有用。

  1. 前往设置
  2. 点击存储
  3. 点击右上角的 3 个点
  4. 点击 USB 计算机连接
  5. 取消选中 MTP
  6. 取消选中 PTP
  7. 回到你的控制台,输入adb devices

现在您应该在手机上看到 RSA 弹出窗口。

于 2015-04-12T15:46:09.840 回答
1

如果您通过网络使用 adb,请尝试通过 USB 连接,反之亦然。这对我有用。接受它一次后,它总是在以后工作。

于 2015-02-03T08:27:46.913 回答
0

我必须重新安装我的 adb 驱动程序才能摆脱这个问题。我安装了“Universal Naked Driver”以恢复我的手机。我卸载了它并从android sdk中重新安装了驱动程序。

于 2013-12-12T23:28:37.167 回答
0

使用不同的 USB 电缆。有些电缆可能没有连接所有引脚或诸如此类,当它们用于图像传输时,调试/adb 不起作用。

底线:我不骗你。适用于我的手机的电缆(adb 适用)不适用于我的平板电脑 - 设备始终处于脱机状态或未经授权,平板电脑不会弹出任何对话框。我尝试了多次重启,设置,在这个过程中我发疯了,诅咒了该死的安卓。然后我不小心插入了平板电脑附带的电缆,突然它工作了。我对 Android 的迷恋肯定已经消失了。多么愚蠢的垃圾。

于 2014-07-09T09:51:27.713 回答
0

我的解决方案是adb devices从命令提示符运行,路径到 adb 应用程序。例如 C:\Android\platform-tools\adb devices 。运行此命令返回以下内容* daemon not running. starting it now on port 5037 * *daemon started successfully *

然后我看到该设备被列为未经授权的设备,拔下 USB,重新插入并提示输入 RSA 指纹。

于 2015-03-04T20:23:33.290 回答
0

我可以按照此处列出的步骤解决这个问题:http: //forum.xda-developers.com/showthread.php?t=2247471

delete the computers adb key: rm /data/misc/adb/adb_key on device 

(I have no idea if in case of multiple authorized computers the additional keys are in a new line of the file or if they are in new files. I have only 1 computer.)

stop all adb processes "killall adb" in linuxoids and "taskkill /IM adb.exe" in windows or simply the taskmanager in both.

restart the phone

toggle usb debugging off and on

connect

use adb

click authorize
于 2013-08-04T16:56:09.333 回答
0

在我的备份软件更改了对我的用户目录的权限后,这发生在我身上。我在文件资源管理器中打开它,它提示我设置权限并解决了问题。

仅供参考:Android 在“\User\.android”下有一个特殊目录,如果您无法访问它,它不会提示您。

于 2015-01-12T18:00:31.757 回答
0

当我关闭Comodo Antivirus时,一切恢复正常。这里建议的所有其他解决方案都是徒劳的。不知何故,我想出了一个解决方案。

如果您使用的是Comodo Antivirus(6.3 版/对于其他版本,请搜索类似选项),以下解决方案将对您有所帮助。

打开 Comodo > 任务 > 高级任务 > 打开高级设置 > 安全设置 > 防火墙 > 防火墙设置 > 高级:过滤环回流量(例如 127.xxx、::1)

取消选中此“过滤环回流量”选项,这会阻止 adb 正常工作。

于 2014-02-11T18:31:11.127 回答
0

只需重新插入对我来说就可以了....权限对话框在我第一次插入设备时没有出现,第二次出现了,现在一切都很好。

于 2016-07-29T08:46:26.643 回答
0

我也面临同样的问题,我发现我使用的是一根简单的 USB 电缆,它只用于充电而不是数据复制。使用好的 USB 数据线解决了我的问题!

于 2015-11-17T05:19:10.863 回答