zoukankan      html  css  js  c++  java
  • adb使用时出现unanthorized问题

    adb使用时出现unanthorized问题

    ADB 启动时,adb devices出现unanthorized问题。

    1. 检查USB调试是否开启。
    2. 重新拔插USB数据线是否有授权提示
    3. 重启adb :adb kill-server和adb start-server
    4. 如果以上方法均不可以,则使用以下步骤
    1. 删除C:Users你电脑的用户名.android下的adbkey和adbkey.pub

       

    2. 关闭USB调试

    3. 重新打开一个DOS命令窗口,进入ADB中

       

    4. 先adb kill-server关闭adb驱动,然后输入adb start-server打开adb服务

       

    5. 插入USB数据线,打开USB调试,出现以下图片,只有出现了第二张图片中的序号,adb才可以配对成功。点击确定,公钥配对成功,只要出现了第二个图片,不管配不配对,本地C:Users你电脑的用户名.android都会新出现两个文件adbkey和adbkey.pub

       

    6. 输入adb devices,成功打开adb服务,
      1. 解决原理:

    原来当我们在window电脑上启动adb.exe进程时,adb会在本地生成一堆adbkey(私钥)和adbkey.pub(公钥);根据弹框提示"The computer's RSA key fingerprint is:xxxx",可以看出是一对RSA算法的密钥,其中公钥是用来发送给手机的;当执行"adb shell"时,adb.exe会将当前电脑PC的公钥(或者公钥)的hash值(fingerprint)发送给Android设备;这是,如果android上已经保存了这台PC的公钥,则匹配出对应的公钥进行认证,建立adb连接;如果android上没有保存这台PC的公钥,则会弹出提示框,让你确认是否允许这台机器进行adb连接,当你点击了允许授权之后,android就会保存了这台PC的adbkey.pub(公钥);

    1. Adbkey和adbkey.pub的存储位置,

      以window系统来说,当我们首次启动adb.exe时,会在C盘的当前用户的目录下生成一个".android"目录,其中adbkey与adbkey.pub就在这个目录下;(adb.exe会在启动时读取这两个文件(如果没有生成就重新生成),所以如果你要是删除或者修改了这两个文件后,必须关闭adb.exe进程,重启之后才能生效);

      其次在android系统上,PC的公钥被保存在一个文件中"/data/misc/adb/adb_keys";

  • 相关阅读:
    git版本库管理介绍,撤销git pull操作
    【laravel5.4】自定义404、503等页面
    【laravel5.4】{{$name}}、{{name}}、@{{$name}} 和 @{{name}} 的区别
    python 了解一点属性的延迟计算
    python 了解一下__dict__
    excel怎么把一个sheet的 全部内容打印到一页纸上
    python 简单了解一下 描述器
    python 调用父类方法, 重写父类构造方法, 不显式调用,会报错
    Python 今天抽空学习了@Property
    python 语法糖是什么意思
  • 原文地址:https://www.cnblogs.com/yejintianming00/p/9339020.html
Copyright © 2011-2022 走看看