device unauthorized & ANDROID_ADB_SERVER_PORT 问题解决

最近做安卓开发的时候,碰到了如下两个极品问题,刚开始晕头转向,仔细一研究终于解决了:

FAQ1:

C:Usersxxx>adb shell
adb: Env var ANDROID_ADB_SERVER_PORT must be a positive number less than 65536. Got "89999"
Android Debug Bridge version 1.0.32
Revision 09a0d98bebce-android

---这个问题是因为我先前windows系统环境变量中设置的ANDROID_ADB_SERVER_PORT值过大,这里要求小于65535,因此解决办法就是:

ANDROID_ADB_SERVER_PORT  65534   # 这个端口号可以随意只要小于65535就可

FAQ2:

C:Usersxxx>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公钥授权问题导致的,可能以前这台机器已经过手机的adb接口了,那么现在需要重新授权就不会在弹框,

不弹框就没法让安卓手机认可PC端口连接,就扯着蛋以及杯具了O(∩_∩)O!

解决办法如下:

1.手机root掉,你可以使用kingroot,或者刷supersu,随便你;

2.手机安装终端模拟器 可以在这下载:

http://www.coolapk.com/apk/jackpal.androidterm

3.打开该模拟器,就跟Linux的terminal一样,在里面输入如下命令:

su root  ---然后勾选授权root权限

rm -rf /data/misc/adb/adb_keys

reboot

然后手机就重启进入系统后,在重新插上USB,就会弹出友好的SB授权弹框,接下来你懂得!

 详细如下图:

参考:

adb devices连接提示 Android offline或unauthorized的解决办法 - 大步's Blog大步's Blog
http://www.dabu.info/adb-devices-android-offline-unauthorized.html

浅淡ADB的公私钥认证机制_夏之吻_新浪博客

http://blog.sina.com.cn/s/blog_79ba23780101sprh.html

原文地址:https://www.cnblogs.com/bluestorm/p/5427235.html