首页 > 编程知识 正文

肌酐低了了会出现什么问题,巨大儿容易出现的问题

时间:2023-05-04 11:18:26 阅读:263569 作者:1533

         最近公司提供给客户的开发机器用户使用连接adb时出现adb devices时出现unauthorized问题,而且并不是每台pc都会出现该问题,存在个别pc会出现这个问题,这时第一反应是不是客户的pc配置问题,就尝试将正常的adb工具包给到客户,让客户更换工具包尝试,但是问题并没有改善,仍然出现这种情况。

         这时候就网上搜相关的信息,发现什么重启机器,重启adb,尝试都不管用。想解决这个问题就需要先了解adb连接授权的逻辑了;我们通过启动adb时会在pc本地生成一个秘钥对,一个私钥和一个公钥;Android终端连接pc时,会弹出一个提示框“The computer's RSA key fingerprint is:****",可以看出是一对RSA算法的秘钥;连接usb线后,会去查看pc端相应目录是否存在这个私钥对,如果有存在,Android端就会弹出一个对话框,进行授权adb 连接,如果没有秘钥对,首次使用adb 会自动生成一个秘钥对,再弹出授权提示,授权后会保存该秘钥对中的公钥到Android端。

      pc端秘钥对存在位置,开发机公钥(adbkey.pub)需要放在 HOME ,ANDROID_SDK_HOME环境变量定义的目录下的 .android
文件夹内: $(HOME)/ .android/adbkey.pub 或$(ANDROID_SDK_HOME)/.android/adbkey.pub如果没有定义这两个变量则会去默认的目录找秘钥对,其他版本的系统基本差不多都是这个路径

windows 7:C:Usersuser.android adbkey.pub
windows XP: C:Documents and Settingsuser.androidadbkey.pub
Linux :/home/user/.android/adbkey.pub

 

当授权后,Android端会把pc的公钥文件保存到data/misc/adb/adb_keys目录,所以当出现其他pc能够正常连接,可以将正常pc的adbkey.pub,adbkey复制到问题pc上进行尝试,需要重启adb才能生效。

      如果需要不弹框,所有pc默认授权可以在UsbDebuggingActivity.java中进行修改,修改如下

    但是之前网上有个网友也出现了这个情况,但是各种操作都不行,最后,发现不知道什么原因导致HOME变量为null,所以$(HOME)/ .android/adbkey.pub文件当然是不存在的,需要注意环境变量问题,如果指向null需要更改下,配成正确的路径。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。