繁体   English   中英

无法将Nexus 4连接到adb:未经授权

[英]Can't connect Nexus 4 to adb: unauthorized

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

我安装了最新的驱动程序和最新的adb版本。 我想我几乎尝试了一切,但仍然得到以下消息:

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

这个错误的原因是什么?

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

尝试检查并取消选中设备中的USB调试选项。 (如果不工作,请尝试拔下/插上USB)

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

我没有删除任何键就解决了这个问题。 这是如何做:

  1. 我的设备通过USB连接到我的电脑
  2. 我确保Eclipse和Android设备监视器没有运行。
  3. 在命令行提示符下键入:adb kill-server
  4. 在命令行提示符下键入:adb start-server
  5. 重新启动adb后,我的设备上有一个提示,要求我允许我进行授权。

Сhange从MTP到相机 (用于Nexus 7)的USB连接模式,或者可能用于大容量存储或其他设备(用于其他设备)。 此选项通常位于Settings -> Storage 然后再次连接设备,您将获得授权对话框。

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

奖金 - 当adb表现不佳时的清单:

  • adb kill-server后跟adb start-server
  • (在设备上) Settings -> Developer Options -> USB Debugging - 关闭然后再打开
  • [Windows]确保你有合适的驱动程序(最好的选择是Koushik Dutta的Universal Adb Driver - 将处理任何设备)
  • [Windows]尝试关闭所有花哨的动态反恶意软件扫描程序/防火墙
  • [Linux]确保在/etc/udev/rules.d/51-android.rules有适当的UDEV规则(再次,通用解决方案: https//github.com/snowdream/51-android
  • [Linux]确保~/.android下的所有内容都归您所有,而不是root (并提供此答案
  • 重启设备(是的,令人惊讶的是,这也是一个有效的措施)
  • (显然)重新插入电缆,尝试不同的电缆,不同的端口,移除任何扩展器电缆

我认为当设备尝试显示要求许可的屏幕时出错,因此它不会出现。

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

  1. rm /data/misc/adb/adb_keys ;
  2. 我通过电子邮件将公钥(adbkey.pub在〜/ .android /中)从我的电脑发送到我的设备;
  3. 调用stop adbd ;
  4. cat adbkey.pub >> /data/misc/adb/adb_keys (授权给自己);
  5. start adbd (使用新密钥重新启动adb)。

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

在此输入图像描述

接受它,你很高兴!

1.)删除桌面计算机上的〜/ .android / adbkey

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

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

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

四个简单的步骤

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

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

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

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

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

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

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

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

(几个月后..)

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

在此输入图像描述

这是我的步骤版本:

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

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

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

更新了设备管理器中的驱动程序,但启用/禁用USB调试和拔出/插入USB仍然无法正常工作。 最后,一旦驱动程序更新,其他答案中提到的“adb kill-server”和“adb start-server”就会成功。

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

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

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

  1. 确保adb是最新的
  2. 确保您使用的是谷歌USB驱动程序: http//developer.android.com/tools/extras/oem-usb.html
  3. 确保将ANDROID_SDK_HOME环境变量设置为正确的路径

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

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

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

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

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

这种旧帖子,在大多数情况下,我认为最受欢迎的答案将适用于人们。

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

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

现在你应该在手机上获得RSA弹出窗口。

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

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

adb kill-server
adb start-server

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

由于RSA授权密钥已存储在此路径中,因此终止并重新启动adb服务器无济于事。

我可以按照此处列出的步骤解决此问题: 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

我不得不重新安装我的adb驱动程序以快速解决这个问题。 为了恢复手机,我安装了“Universal Naked Driver”。 我卸载了它并重新安装了驱动程序的android sdk。

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

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

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

取消选中 “过滤环回流量”选项,可防止adb正常工作。

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

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

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

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

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

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

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

简单地重新插入就可以解决这个问题了......第一次插入设备时,权限对话框没有出现,第二次出现,现在一切都很好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM