记一次亲身经历,希望能帮遇到和我同样问题的小伙伴。
我手里的是LG G watch W100手表,刷了Android 5.0.1的系统。与电脑通过USB连接时,一直都显示未授权,且手表死活弹不出授权框。
我试了网上常见的解决方法:拔插USB线、重启电脑和手表、手表撤销adb授权、删除电脑上adbkey的文件等,均不成功。这边建议先试试这些常用方法,如果都失败了再试试我的方法。
在解决这个问题之前,需要先了解adb授权的原理。详细可见这篇文章, https://blog.csdn.net/sinc00/article/details/44957943/?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_title~default-0.control&spm=1001.2101.3001.4242
大概意思就是,adb授权是由电脑生成一对RSA密钥,私钥自己保存,公钥发给手表。当这对密钥认证成功,则建立adb连接,如果手表上没有私钥文件,则弹出授权框。如果电脑和手表有任何一方缺失密钥文件,或者密钥没有匹配上,都会导致授权不成功。
我查看了电脑端,应是没问题的,那问题可能出在手表端。于是刷了一个twrp的recovery镜像,在recovery模式下查看手表的/data/misc/adb/目录,是没有adbkey文件的。不知道手表出了啥问题,就是不弹授权框,所以需要我们手动地把adbkey文件给传过去。
abd未授权状态无法传文件(晕。。),但我惊喜地发现在recovery模式下adb是可以正常使用的(twrp牛批!)。然后在recovery模式下,使用adb push命令把电脑上的公钥文件传到手表上就可以啦。
电脑上的密钥文件在C:\Users\ln.android文件夹下,其中公钥文件是adbkey.pub,将这个文件复制到桌面上,并改名为adb_keys,使用如下命令,把该文件传到手表上的/data/misc/adb/文件夹下就可以得到一个已授权的adb连接啦! adb push C:\Users\ln\Desktop\test.txt /data/misc/adb/
|