安卓ADB设备未经授权问题

145

配置:

  • Windows 8.1
  • ADB 版本:1.0.32
  • 智能手机:OnePlus One

问题:

我按要求安装了三星驱动,但运行 ADB devices 命令时出现未授权的提示。

已尝试:

  1. 我已尝试这篇帖子中提到的所有方法:https://dev59.com/7WAg5IYBdhLWcg3w3eJi#25546300

    但问题是,我的手机上没有提示我接受连接。

  2. 当我运行adb shell命令时,输出如下:

    error: device unauthorized.
    This adbd's $ADB_VENDOR_KEYS is not set; try 'adb kill-server' if that seems wrong.
    Otherwise check for a confirmation dialog on your device.
    

    我执行了"adb kill-server",但它没有改变任何东西。为什么呢?


在尝试了以上所有方法后,我开始下载较低版本的AVD以查看是否有其他版本可以使用。API 28和27仍然在启动时冻结,但API 26可以正常启动。Android Studio 3.1.3。我将尝试在以后卸载并重新安装,但很高兴这最终又可以正常工作了。在经历了近一个星期的关键进程错误而没有解决之后,在进行了全新的Windows 10安装后,我进行了Android Studio 3.1的全新安装。 - Jon
24个回答

291
  1. 尝试撤销USB调试授权。
  2. 再次启用USB调试。

它起作用了。


17
在重新启用USB调试时,检查“始终允许此设备的USB调试”框可能很重要。我认为只有在重新启用USB调试时将Android设备连接到USB时,才会出现此选项。 - joshgoldeneagle
1
我只需要在我的设备上禁用然后重新启用USB调试,之后才能在新电脑(Macbook)上使用。 - Nancy
1
谢谢你的回答。你节省了我的时间。 - Kelvin Low
运行得像魔法一样。 - Polycarp Kavoo
是的,我禁用并重新启用了USB调试,然后将其从工作站拔出/插入,它就正常工作了。 - Daikyu
显示剩余4条评论

61

2
这个键在 Mac 上在哪里? - mosaad
1
重新启动后,这两个文件都会出现。就像重新启动一样?我在Windows上遇到了一个无法消除的“未经授权”的设备!(但是我没有重新启动,因为有200万个窗口打开) - tbone
3
我知道这是一个晚回答,但你只需要重新启动adb服务器。 - Carlos E. L. Augusto
2
删除了文件中的所有内容,不仅修复了ADB网络连接问题,还修复了USB连接问题。 - Ben
2
将其重命名为.android.old以保险起见,但是一旦我重新启动了adb服务器并撤销了授权,我的手机立即提示我!@julestruong 谢谢! - Richard.Davenport
显示剩余2条评论

41

按照顺序:

    adb kill-server
  • 在您的设备设置中,进入开发者选项并禁用USB调试

  • 按下“撤销USB调试授权”,点击“确定”

  • 启用USB调试

adb start-server

2
我在Ubuntu中以root身份运行了该命令,这解决了我的问题。如果没有su(Ubuntu 18),我无法使其工作。 - petobens

25

我从~/.android文件夹中删除了以下文件:

  • adbkey
  • adbkey.pub

我在设备内禁用并启用了ADB,现在它可以正常工作了...


2
我只看到了adbkey文件,所以我将其删除后,它就像魔法般地正常工作了。谢谢! - MrObjectOriented

18

在开发者选项中,

  1. 启用USB调试。

这里输入图片描述

  1. 授权应用程序访问。

这里输入图片描述

(如果没有开发者选项菜单,则必须在电话状态菜单的版本号中点击 3 次以成为开发者。您将可以看到开发者选项菜单。)

这里输入图片描述


16

删除现有的 adbkeys

或者

重命名 adbkeys

最佳实践是重命名密钥,因为它提供了备份。

cd ~/.Android

mv adbkey adbkey2

mv adbkey.pub adbkey.pub2

接下来停止并启动服务器

cd ~/Android/Sdk/platform-tools

找到设备 /Android/Sdk/platform-tools$ ./adb devices

/Android/Sdk/platform-tools$ ./adb kill-server

/Android/Sdk/platform-tools$ ./adb start-server

然后,停止模拟器。打开 AVD 管理器,单击向下箭头,然后单击擦除数据

重新启动模拟器。然后一切正常 :)


没有帮助。仍然得到 platform-tools adb devices -> List of devices attached -> 192.168.0.185:5555 unauthorized - Dr.jacky

14

这对我起作用了

1- Go to ~/.android/ and remove “adbkey”
2- Disconnect USB connection
3- adb kill-server
4- Revoke USB debugging authorizations (in developer option)
5- Reconnect the device to the Ma
6- adb devices

2
这是唯一对我有效的方法。谢谢 :) - SimonEritsch

9
尝试在开发者选项中取消勾选“通过 USB 验证应用程序”,然后打开和关闭“USB 调试”。这对我有效。

1
这种方法对我有效: 一开始我的“USB调试”是开启的,然后我取消了“通过USB验证应用程序”的勾选,但这并没有帮助。在我打开“USB调试”之后,它就起作用了! - Jackie Yeh
我的设备无法启动。 - IgorGanapolsky

5

确保在通过USB连接到PC后,设备显示指纹时,您已经接受并按下了“确定”按钮。


2
我想知道那些点赞其他答案的人是否真正检查了设备屏幕... - Skippy le Grand Gourou
当我低头看着手机时,感觉自己很蠢。 - Jack St. Claire

4
在Android Studio中,Run菜单> Run会显示连接设备的OFFLINE...
以下是解决它的步骤:
  1. (先阅读下面的注意事项)删除〜/ .android / adbkey(或重命名为〜/ .android / adbkey2,如果您希望出于某种原因将其返回,则更好)
    注意:我碰巧执行了此步骤,但它没有解决问题,在执行下面的所有步骤后才起作用,因此不确定是否需要此步骤。

  2. 运行locate platform-tools / adb
    注意:在下面的命令中使用此处提供的路径

  3. 终止adb服务器:
    sudo 〜/ Android / Sdk / platform-tools / adb kill-server

  4. 您将收到一条接受允许..消息弹出框,请接受。这很重要,可以解决问题。

  5. 启动adb服务器:
    sudo 〜/ Android / Sdk / platform-tools / adb start-server

  6. 在Android studio中再次按照Run菜单> Run操作
    它将显示类似三星...(您的手机制造商名称)。
    同时在设备上正确安装apk,这次没有错误。

希望能有所帮助。

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