Android ADB 设备未经授权

Android ADB devices unauthorized

配置:

问题

我安装了三星的驱动程序,据说是这样的。当我 运行 ADB devices 命令时,它说 unauthorized.

已经尝试过:

  1. 我已经完成了关于此post所说的一切:

    但问题是 phone 上没有提示我必须接受连接。

  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",但它没有改变任何东西。为什么?

我想你已经在你的智能手机中启用了设备上的开发者选项?如果没有,您可以查看 Android、http://developer.android.com/tools/device.html#developer-device-options

提供的步骤

我遇到了这个问题,并没有通过删除任何键来解决(至少删除它们没有解决它,虽然我修复它后可能有效果)

实际上我的 sdk-tools 版本和 Android Studio 版本之间存在差异。更新我的工具后它仍然没有工作,但在更新 AS(到 1.4)后一切又正常了。

始终同时更新 sdk-tools 和 AS 版本 ;)

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

成功了。

您只需要授权调试模式即可。
1. 确保您的设备已连接到您的 PC。
2. 转到
允许通过 Android-Studio 授权调试模式 运行 -> 将调试器附加到 Android 进程
比你会看到弹出窗口 window 允许在你的设备中使用调试模式,
按确定。完成。
我希望它对某人有所帮助。

我也遇到了这个问题。我在 Nexus 5X 上使用自定义构建的 AOSP。我在 build/core/main.mk:

中添加了一行
diff --git a/core/main.mk b/core/main.mk
index a6f829ab6..555657539 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -362,6 +362,8 @@ else # !enable_target_debugging
   ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=0
 endif # !enable_target_debugging

+ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=1
+
 ## eng ##

 ifeq ($(TARGET_BUILD_VARIANT),eng)

现在 adb shell 工作正常

那些资料很有用(中文文章):http://www.voidcn.com/blog/kc58236582/article/p-6335996.html, http://blog.csdn.net/fanmengke_im/article/details/28389439

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

  • adbkey
  • adbkey.pub

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

重新安装我的 android 工作室后,我遇到了同样的问题。这是我为使我的 adb 再次工作所做的工作:

-path to C:\Users\User\AppData\Local\Android\sdk\platform-tools
-Shift+r.click and start command from here instead.

Thankgod xda 开发者存在:http://forum.xda-developers.com/verizon-lg-g3/help/unable-to-access-adb-t2830087

只需删除 C:Users/$Name/ 中的 adbkey 文件。android adbkey.pub 丢失。

之后重新启动,两个文件都在那里。

如果这不起作用: - 尝试撤销 USB 调试授权。 - 再次启用 USB 调试。

确保在通过 USB 连接到您的 PC 后询问它是否显示设备指纹时,您已接受按下的 "ok" 按钮。

对于以后遇到此问题的任何人,这也可能有所帮助。我在尝试从用户命令提示符下使用 adb 时遇到了这个确切的问题,上面的答案没有帮助,但是在管理员命令提示符下 运行 时,问题随着 "adb kill-server" 消失了。

尝试取消选中开发人员选项中的 "verify apps via USB",然后打开和关闭 "USB Debugging"。它适用于我。

依次为:

    adb kill-server
  • 在您的设备设置中,转到开发人员选项结束禁用 usb-debugging

  • 按REVOKE USB调试权限,点击OK

  • 启用USB 调试

    adb start-server
    

在开发者选项中,

  1. 启用 USB 调试。

  1. 授权。

(如果没有开发者选项菜单,必须点击3次Phone状态菜单的内部版本号才能成为开发者,可以看到开发者选项菜单。)

  1. 首先从主目录的 .android 目录中删除 adbkeyadbkey.pub
  2. 在您的家中创建 .android 目录,权限为:$ chmod 710 .android/,所有权为:chown -R <user>:<user> .android/。例如:

    $ chmod 710 .android/
    $ chown -R ashan:ashan .android/
    
  3. 转到手机中的开发者选项并点击选项 Revoke USB debugging authorizations

  4. 关闭设备中的所有 USB DebuggingDeveloper Options,并断开设备与计算机的连接。

  5. 重新连接设备,首先打开Developer Options。然后打开USB debugging

  6. 此时在您的手机中,您会收到一个提示,要求您征求许可。注意:您必须选中复选框 always accept from this …. 选项并单击确定。

  7. 现在在你的机器上,启动 adb 服务器:adb start-server.

  8. 希望当您发出命令:adb devices 现在,您会看到您的设备已准备好授权。

在 Android studio 中,Run menu > Run 显示已连接设备的 OFFLINE ...

下面是解决问题的步骤:

  1. (先阅读下面的注释)删除 ~/.android/adbkey(或者,重命名为 ~/.android/adbkey2,这样更好,以防你出于某种原因想要它回来)
    注意:我碰巧做了这一步,但是并没有解决问题,在做了下面的所有步骤之后它起作用了,所以不确定是否需要这一步。

  2. 运行 locate platform-tools/adb
    注意:在下面的命令中使用来自这里的路径

  3. 关闭 adb 服务器:
    sudo ~/Android/Sdk/platform-tools/adb kill-server

  4. 您将在设备上看到 Allow accept.. 消息弹出窗口。接受。这个很重要,解决了问题

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

  6. 在Android工作室,再做Run menu > Run
    它会显示类似 Samsung ...(您的 phone 制造商名称)的内容。
    这次也正确地在设备上安装了 apk,没有错误。

希望对您有所帮助。

Try deleting the adbkey file from C/.android folder

然后 运行 命令为 上面提到的即

adb kill-server, adb start-server and adb devices

.

删除现有的 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 管理器,单击向下箭头,然后单击 擦除数据

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

None 本页列出的方法对我有用;具体来说:

  • 我遇到了一个问题,即在选择 撤销 USB 调试授权
  • 时设置应用程序会崩溃
  • 我是 运行 LineageOS 14 x86_64
  • 我在网络上使用 ADB
  • /data/misc/adb 不包含 adb_keys 文件
  • 删除我的本地 ~/.android/adbkey 也没有帮助
  • 我从本地终端获得了 root 权限
  • 我没有收到任何确认对话框
adb: error: failed to get feature set: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
- waiting for device -

最后,我发现了一个非常有用的post here,建议将~/.android/adbkey.pub的内容手动放入/data/misc/adb/adb_keys文件中。

他们提出了以下两种方法之一:

  1. 从另一个正在工作的设备,将adb_keys文件复制到您的计算机中:

    # On the other Android device
    cp /data/misc/adb/adb_keys /sdcard
    
    # From your computer
    adb pull /sdcard/adb_keys .
    

    然后将工作的adb_keys文件放入有问题的Android设备的sdcard(使用Web或MTP)命名为adb_keys,然后将文件复制到正确的路径:

    # On the problematic device
    cp /sdcard/adb_keys /data/misc/adb/adb_keys
    
  2. 另一种方法是简单地从 ~/.android/ 目录中复制您机器的 adbkey.pub,并将其放入有问题的 Android 设备的 sdcard(使用 Web 或MTP) 命名为 adb_keys,然后将文件复制到正确的路径:

    # On the problematic device
    cp /sdcard/adbkey.pub /data/misc/adb/adb_keys
    

    (注意:SO 上有一个 similar answer 详细介绍了此方法。)

因为我是 运行 我计算机上的网络服务器,并且我在 Android 上安装了 curl,所以我从终端 su 并且 运行 我的 Android 设备上的以下内容:

cd /data/misc/adb
curl 192.168.1.35:8080/adbkey.pub > adb_keys

已杀死 adb 守护程序(使用 adb kill-server)和 BAMadb shell 工作正常,就像从一开始就应该的那样。

希望这里描述的方法对你有用,就像对我一样。

这对我有用:

rm ~/.android/adbkey.pub

sudo ./adb kill-server

sudo ./adb 启动服务器

sudo ./adb -s emulator-5554 install ~/apk_to_install.apk

我不确定 运行 具有 sudo 权限的 adb 是否是个好主意,但这是我让它工作的唯一方法。问候。

当我作为非 root 用户尝试连接到自定义恢复 (Philz) 时遇到权限错误时,我以 root 身份获得了此信息。所以我终止了 adb 服务器,将我的用户帐户的 .android 子目录复制到 /root,chowned -R 到 root.root,然后重新启动了 adb 服务器。我在!

您的应用被检测为某些有害程序。 关闭 "Verify apps over USB" 选项。它与 "USB debugging".

的视图相同

对于 FIRE STICK 4K,它实际上在对话框中说:

否则请检查您设备上的确认对话框

确实在另一个房间的电视上有一个确认对话框。啊!

这对我有用

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
Disconnect USB between PC and device
Stop adb server by entering "adb kill-server" in command window
On device use "Revoke USB debugging authorizations" in "Developer Options"
On PC delete "adbkey" file in user directory, for example "C:\Users\Amit\.android"
Reconnect the device to the PC
Open a command window and enter "adb devices". Watch the device's screen for any Authorization message and allow the connection.