如何解决Android ADB主机设备中未经授权的ADB设备?

当我使用根植Android设备作为ADB主机发送adb命令“adb devices”到Samsung S4时,我收到了设备未经授权的错误消息。 但是,当我尝试adb三星Galaxy Nexus,它工作正常。 任何人都可以build议如何解决我的三星S4问题?

========================================= # adb devices List of devices attached 4d00f9169907301b unauthorized ========================================= 

提前致谢。

编辑:发现这个问题只发生在Android 4.2.2及以上。 以下链接解释说,Google已经实施了一些使用adb的新安全function。

http://nelenkov.blogspot.com/2013/02/secure-usb-debugging-in-android-422.html

感谢任何人都可以帮助。

Solutions Collecting From Web of "如何解决Android ADB主机设备中未经授权的ADB设备?"

  • 从客户端手机获取公钥(adb主机)

    cat /data/.android/adbkey.pub

  • 将上面的公钥复制到目标手机的/data/misc/adb/adb_keys位置。 (您可能需要先停止adb守护进程并stop adbd

    cat / data / misc / adb / adb_keys

validation两个cat输出匹配。

尝试在目标start adbd重新启动adb守护进程或只是重新启动它们。

如果您在上述步骤中读取或写入ADB KEYS时遇到问题,请尝试使用临时path(例如: /data/local/tmp ) 设置环境variablesADB_KEYS_PATH 。 请参阅该链接进入更多的细节

  "On the host, the user public/private key pair is automatically generated, if it does not exist, when the adb daemon starts and is stored in $HOME/.android/adb_key(.pub) or in $ANDROID_SDK_HOME on windows. If needed, the ADB_KEYS_PATH env variable may be set to a :-separated (; under Windows) list of private keys, eg company-wide or vendor keys. On the device, vendors public keys are installed at build time in /adb_keys. User-installed keys are stored in /data/misc/adb/adb_keys" 

选中并取消选中设备中的USBdebugging选项。 如果这不起作用,插入USB几次。

在某个时候,设备应该显示一个消息框要求您授权计算机。 点击是,然后设备将被授权。

如果任何人有类似的问题,有一个电话屏幕破裂,并需要访问亚行:

  1. 根植你的手机(我的手机已经扎根了,所以我至less得到了祝福)。

如果您忘记启用开发人员模式,并且您的adb未运行,请执行以下操作:

  1. 重新启动手机进入恢复。
  2. 用电缆连接手机。
  3. 打开terminal。
  4. 如果您键入adb devices ,则应该在列表中看到该设备。
  5. 如果是,请input:

     adb shell mount /system abd shell echo "persist.service.adb.enable=1" >> default.prop echo "persist.service.debuggable=1" >> default.prop echo "persist.sys.usb.config=mtp,adb" >> default.prop echo "persist.service.adb.enable=1" >> /system/build.prop echo "persist.service.debuggable=1" >> /system/build.prop echo "persist.sys.usb.config=mtp,adb" >> /system/build.prop 

现在,如果你要重新启动手机,android会告诉你“哦,你的adb正在工作,但请点击这个确定button,所以我们可以信任你的电脑”。 显然,如果我们不能点击手机保持恢复模式,并执行以下操作(假设您不是在adb shell模式下,如果是这样的第一个typesexit ):

 cd ~/.android adb push adbkey.pub /data/misc/adb/adb_keys 
  1. 欢呼,这一切都应该是现在! 只要重新启动手机,您应该可以在手机正在运行时访问adb:

    亚行shell重新启动

PS是使用OS X和Moto X风格与破解屏幕。

你有没有尝试过

 adb kill-server adb shell 

有时adb卡住,先杀死adb服务器,然后启动一些命令强制授权窗口popup。

也请检查您的手机上的adb客户端版本。 据我所知,这个function是由adb 1.0.31支持的。

体验:华硕ZENFONE

如果你有面对华硕Zenfones缺less驱动程序按照此链接( http://donandroid.com/how-to-install-adb-interface-drivers-windows-7-xp-vista-623

我试着用

1)在adb cmd中杀死和启动adb服务器。

2)打开和closuresUSBdebugging和…

这是我的工作。

第1步 :删除与设备的连接并closuresEclipse

第2步 :导航到C:/Users/User_name/.android/

第3步 :您将findadb_key

第4步 :只要删除它。

第五步。再次连接,系统会再次问你。

第六步:请求设备在提示时记住RSA密钥。 我认为它完成了。

如果您在几天后面对相同的问题,只需禁用并启用USBdebugging

C:/users/<user name>/.android .android删除文件夹.android 。 它解决了我的问题。

必须在您的s4屏幕上提示您授权该计算机。 你可以告诉它记住它。 这是出于安全原因,发生在Android 4.4+

我不得不在手机上检查debugging器的框,“总是允许这个电话”。 然后我做了一个adb设备,然后inputadb命令清除添加。 它工作正常。 在此之前,它不承认下午和其他命令

当您第一次连接到计算机时popup窗口,您需要允许Allow USB debugging

我发现了Nexus 5的一个解决scheme,并安装了TWRP 。 基本上格式是我发现的唯一的解决scheme,我尝试了所有在这里列出的解决scheme: ADB Android设备未经授权

要求Google备份您的应用程序。 保存您手机上的所有重要文件

请注意,我拒绝承担所有责任,因为我所做的风险很大,但在我的情况下工作:

在开发人员选项中启用USBdebugging(不知道它是否帮助,因为设备未经授权,但仍然…)

确保您的手机已连接到电脑,并且您可以访问存储设备

下载你的连结的谷歌图片: https : //developers.google.com/android/nexus/images unrar你的文件,并把它们放在你的计算机上的一个新的文件夹,命名工厂(任何名字将做)。

擦拭所有的数据…你将有0文件在您的Android从计算机访问。

然后重新启动进入BOOTLOADER模式…你将会看到“你没有安装操作系统,你确定要重新启动吗?

然后执行(双击)“工厂”文件夹中的.bat文件。

你会看到命令行详细的安装操作系统。 当然,在这个阶段避免断开电缆

手机将需要约5mn初始化。