首页 文章

亚行Android设备未经授权

提问于
浏览
263

自从我重新安装Eclipse(只是删除并再次下载)后,我无法在Samsung Galaxy i9001(使用CyanogenMod - Android 4.4.2)上调试我的应用程序 . 它在重新安装之前工作正常 .

拔下/插入,取消选中/选中“Debug Enabled”,adb kill-server / adb start-server,重启手机/电脑对我不起作用 . 在设备授权对话框上永远不会出现(但我记得在重新安装之前出现了对话框) . 我不知道如何强制显示此授权对话框 . .android目录中没有abd_key.pub文件 . 当我尝试读取cpu信息DDMS说:

[2014-04-15 12:47:06 - DDMS] device unauthorized. Please check the confirmation dialog on your device.

有任何想法吗?是否可以手动生成密钥而无需确认对话框?

USB连接
Via USB

无线连接
Via Wi-fi

25 回答

  • 16

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

    我不得不进入

    C:\Users\<userName>\.android\adbkey and adbkey.pub
    

    文件,删除那些,然后杀死并重新启动adb服务器 . 我必须停止并重新启动调试器并以PTP模式连接USB .

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

  • 4

    作为参考,我刚刚在Linux上遇到了同样的问题,并且有一段时间搞清楚它 . 我最终确定我有一个root权限的〜/ .android目录(感谢以root身份运行adb,同时试图弄清楚其他连接问题) . 删除该根拥有的〜/ .android目录会在下次重新连接设备时解决丢失的授权对话框 .

    简单地改变所有权也可能解决了问题 - 我猜测这是一个简单的缺乏对存储在内部的adb密钥文件的访问权限,这是问题的根源 . 我没有验证,但是,我不会故意打破我来之不易的连接,所以我可以检查;-)

  • 2

    Linux-Ubuntu-14.04
    我读了这篇文章的所有答案,没有对我有用:(
    这可能是因为我没有使用普通的最终用户设备,在企业设备上工作!

    Thing worked for me is:
    从lsusb获取设备的VID,PID并更新51-android.rules(https://source.android.com/source/initializing.html#configuring-usb-access
    确保adb_usb.ini也使用相同的VID,PID进行更新

  • 8

    我遇到了与nexus7相同的问题 .

    以下是为了解决这个问题 .

    • 在设备的 Settings 菜单中打开 Developer 选项 .

    • Switch off 屏幕右上角的按钮 .

    从菜单列表中

    • Delete all debug permission .

    • Switch on 屏幕右上角的按钮 .

    现在将您的设备重新连接到您的PC,一切都应该没问题 .

    抱歉我的英语不好,菜单(按钮)的某些名称可能不正确,因为我的是日语 .

  • 776

    我在两部手机中收到同样的信息:

    - Sony Xperia E
    - Samsung Galaxy Core 2
    

    Android 4.4.2,我用这两个步骤解决了它:

    1.-将我的adb更新到1.0.31,从SDK Manager下载最新版本的Android SDK

    您可以输入以检查您的adb版本

    adb version
    

    2.-手机插入USB调试模式后,会出现一条消息,要求您授权此计算机进行调试 . 您必须标记 "Always allow this computer" ,然后单击 Allow .

    希望能帮助到你 .

  • 1

    我对此进行了分层,我通过关闭手机的Wi-Fi获得了许可对话框 .

  • 12

    解决方案是将文件 ~/.android/adbkey.pub (在GNU / Linux上,或Windows上的 %USERPROFILE%\.android\adbkey.pub )复制到Android,并将其作为 /data/misc/adb/adb_keys . 您需要root权限才能执行此操作 .

    您可以以任何您喜欢(或能够)的方式传输文件,无论是USB,电子邮件还是临时文件上传服务 . 在我的情况下,因为它是在虚拟机中安装的新的Android-x86,没有可用的Web浏览器,并且网络/ TCP adb无法正常工作,所以我必须实际输入715个字符 .

    至少它起作用了 .

  • 79

    我为解决这个问题所做的工作是再次断开usb电缆与USB端口的连接并重新连接(使用我机器上的另一个端口完成) .

    然后我选择充电,就是这样 . 移动设备要求我授予机器访问权限,我同意了,这解决了这个问题 .

    运行adb设备时,我在列表中看到了该设备 .

    (在Windows 10家中完成) .

  • 0

    我尝试了很多方法来解决这个问题,这个问题适合我 .

    在您的PC上安装SnapPea . SnapPea

    将手机插入USB调试模式并打开SnapPea,手机上会显示授权对话框 . The Dialog shows on the phone

    希望能帮助到你 .

  • 0

    哦,最后我明白了!删除Eclipse目录后,我将其安装到另一个目录中 .

    echo %ANDROID_SDK_HOME%
    

    显示错误的sdk目录路径 .

    • setx ANDROID_SDK_HOME "E:\adt-bundle-windows-x86_64-20140321\sdk"

    • 拔掉设备

    • adb kill-server

    • adb start-server

    • 插件设备

    完成这些步骤后,我能够在手机上看到带有RSA指纹的确认对话框:)

  • 5

    在osx和Nexus 5(A6.0.1)上有类似的问题 . 我确实获得了授权弹出并确认了它,尽管Android Studio或任何其他IDE都可以连接到设备 .

    原来我的Nexus( rooted )丢失了钥匙文件 .

    • 重启Android设备进入恢复状态

    • Ran代码贴在下面

    • 重新启动Android设备,adb现在识别设备

    将密钥从计算机推送到Android设备:

    cd ~/.android && adb push adbkey.pub /data/misc/adb/adb_keys
    

    Solution came from here

  • 36

    这解决了我的问题!

    • 运行你的android模拟器

    • 转到设置并启用开发人员模式

    • 启用开发人员设置usb调试

    在这一点上,你将获得模拟器弹出按摩授权设备,你很高兴去:)

  • 3

    这是错误,因为您的窗口版本没有usb 3.0驱动程序接收器验证来自手机的权限 . 我花了5天时间来处理这个bug . 现在,安装58964_Intel(R)_USB_3.0驱动程序 . 继续使用很棒的代码!

    i use this link to download driver

  • 24

    如消息所述,您需要允许手机上的adb访问 .

    您需要先使用USB线将手机连接到PC,然后屏幕上会弹出授权消息 . 勾选记住您的选择,然后允许它 .

    IF your device doesnt shows any messages when connected to the PC.Just do this.

    删除/ data / misc / adb / adb_key,重新启动手机并再次尝试连接 . 该消息应该出现 .

  • 3

    检查你是否安装了kies . 这是一种可能的解决方案

  • 0

    adb usb 为我工作这会重新启动监听USB端口的adb守护程序返回的命令:

    错误:设备未经授权 . 请检查设备上的确认对话框

    . 但RSA密钥的提示立即出现在手机上 . 一旦我批准,一切都按预期开始工作

  • 2

    无论出于何种原因,该设备很可能不会在ADB上获得授权 .

    1. Check if authorized:

    <ANDROID_SDK_HOME>\platform-tools>adb devices
    List of devices attached
    4df798d76f98cf6d        unauthorized
    

    2. Revoke USB Debugging on phone

    如果设备显示为 unauthorized ,请转到手机上的开发人员选项,然后单击 "Revoke USB debugging authorization" (使用JellyBean和Samsung GalaxyIII测试) .

    3. Restart ADB Server:

    然后重启adb服务器

    adb kill-server
    adb start-server
    

    4. Reconnect the device

    设备将询问您是否同意连接计算机ID . 你需要确认一下 .

    5. Now Check the device

    它现在被授权!

    adb devices
    <ANDROID_SDK_HOME>\platform-tools>adb devices
    List of devices attached
    4df798d76f98cf6d        device
    
  • 8

    我只是试试 adb kill-server ,它对我有用:

    PS C:\Users\languoguang> adb devices
    List of devices attached
    MKJ0117A19000186        unauthorized
    PS C:\Users\languoguang> adb shell
    error: 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.
    

    杀死并启动adb服务器:

    PS C:\Users\languoguang> adb kill-server
    PS C:\Users\languoguang> adb start-server
    * daemon not running; starting now at tcp:12345
    * daemon started successfully
    PS C:\Users\languoguang> adb devices
    List of devices attached
    MKJ0117A19000186        device
    
  • 0

    我在这个愚蠢的问题上浪费了几个小时 . 上述解决方案都不能单独为我工作 .

    我正在运行Windows 10.我有一个旧手动安装的Android SDK以及Android Studio的SDK . 我删除了手动安装的SDK,我的所有设备都停止了工作 . 这些是症状:

    $ adb usb
    error: 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.
    

    以及

    $ adb devices
    List of devices attached
    id1        unauthorized
    id2        unauthorized
    id3        unauthorized
    

    说实话,我不确定这些步骤中的哪一个让我得到了允许USB调试?提示回来,所以我列出了一切的完整性 . 按顺序从最简单到最难 . 在前两节之后,大多数人似乎都重新站起来了 .


    重启ADB

    我将在以下每个部分之后执行此操作 .

    adb kill-server
    adb usb
    

    对开发者选项感到疯狂

    • 关闭并重新打开开发人员选项

    • 关闭USB调试并重新打开

    • 撤销USB调试授权 . 在USB调试打开时尝试此操作,如果可能,请在USB调试关闭时尝试 .


    Replug设备

    • 拔下USB电缆并将其重新插入手机 .

    • 切换PC连接USB电缆的物理端口

    • 切换用于连接设备的物理USB电缆


    开始重启所有内容

    • 重新启动所有设备并重新连接

    • 重新启动电脑

    • 打开和关闭WIFI


    开始删除内容

    • CAUTION 删除 ~/.android 文件夹 . 有时此文件夹可能具有错误的权限,这可能会导致问题 . 您可能希望先备份此文件夹 .

    • 从添加/删除程序中卸载所有制造商特定的驱动程序 . 我卸载了以下(名称不准确)

    • LG United USB Driver

    • HTC移动USB驱动程序

    • OnePlus USB驱动程序1.00

    • 三星USB驱动程序

    • 我还卸载了所有模拟器及其各自的驱动程序(可选)

    • Nox及相关司机

    • Bluestacks

    • Genymotion


    删除所有与Android相关的环境变量 .

    • 如果已设置,请删除 %ANDROID_HOME%

    • 如果已设置,请删除 %ANDROID_SDK_HOME%


    在这一点上,我的所有设备都神奇地变为现实并开始显示允许USB调试?通过亚行正确提示和连接 . 如果您找到了解决方案,我真的很抱歉您在所有这些步骤结束时重新启动了所有设备和您的开发机器并使用新电缆连接到新的USB端口 .

    如果仍然无效,请尝试以下有关此主题的其他SO帖子:

  • 11

    对我有用的步骤:
    1. Disconnect phone from usb cable 2. Revoke USB Debugging on phone 3. Restart the device 4. Reconnect the device
    最重要的部分是重启设备 . 没有它就行不通 .

  • 0

    安装Android工作室后,我对文件夹“〜/ .android”(仅对root用户进行读写访问)的权限不正确 . 所以我改变它并从Android工作室运行项目(设备仍被标记为“未经授权”) .

    Android工作室显示错误“安装apk错误”,但在文件夹“〜/ .android”中创建了文件“adbkey”,“adbkey.pub”,“debug.keystore” .

    之后我重新启动了adb(运行命令 adb kill-serveradb start-server ),我的设备上出现了授权对话框 .

    希望有人会接近这个解决方案 .

  • -3

    它可能不适用于所有情况,但因为我使用长电缆我的设备没有正确连接和消息不会弹出更改电缆可能会解决问题

  • 0

    我有同样的问题 . 通过将“USB计算机连接”设置为“相机(PTP)”而不是“媒体设备(MTP)”解决了问题

  • -1

    在某些三星设备上,可以通过拨打 *#0808# 设置的模式更改在没有直接重启的情况下不会粘连 . 重新启动后,请拨打相同的字符串并确保已选择 adb + mdp 并将USB设置为 AP . 在此之后,请确保重新连接手机并重新启动ADB服务器 . 同时尽量避免使用USB集线器和虚拟机,这无疑会使问题进一步复杂化 . 按照前面提到的清除授权设备等的说明进行操作 .

  • 0

    我的Nexus 10出现了这个错误 . 我尝试了所有可以找到的答案,然后我意识到我使用的是比平常更多的USB端口 . 我切换到使用我经常使用的端口,这是我的笔记本电脑的另一端,授权在我的平板电脑上弹出!

相关问题