在Ubuntu下进行Android开发的时候会遇到手机无法识别的问题,手机插上后执行 adb root 会显示没有权限:
遇到这种情况需要在Ubuntu设置下。根据以下步骤进行设置后会解决这个问题,我所使用的开发环境是Ubuntu16.04。
1. 首先插上手机,终端执行 lsusb ,这样便可以查看当前连接电脑的设备
可以发现,插入的手机的VendorID是 18d1 , ProductID是 9025 。
如果不能知道哪个是插入的手机,可以拔掉手机后再执行一次 lsusb ,这样对比两次显示的结果就可以找到插入的手机。
2. 终端执行如下命令
53-android.rules文件可能不存在,那就创建。
注意,这个53-android.rules 文件名字应该是随意命名的,好像数字50,51,52,53等等都可以,我只验证过50和53。
3. 增加如下内容到53-android.rules
注意, SUBSYSTEM=="usb", SYSFS{idVendor}=="**18d1**", MODE="0666" 这句是给 ubuntu 7.01 以后的系统识别用的.
而 SUBSYSTEM=="usb_device", SYSFS{idVendor}=="**18d1**", MODE=="0666" 是给 Ubuntu 7.01之前的系统识别用的,相当于系统兼容。
4. 接着运行如下命令
注意, sudo /etc/init.d/udev restart 也可以为 sudo service udev restart //or restart udev
5. 在android sdk的tools目录下运行(这一步很重要,必须要sudo,否则没效果)
到这一步了,正常情况下应该会有设备显示出来。但结果发现 List of devices attached 下面没有设备出现,这就意味着 adb不识别新的USB 设备,纠结了。
6. 如果跟我一样悲惨,请执行如下操作
注意,如果没有 .android 和 adb_usb.ini ,可以自己新建。
另外如果有 adb_usb.ini ,它的内容一般如下:
7. 在 adb_usb.ini 中添加前面获得的VendorID内容
注意,要加十六进制符号 0x
8. 保存,关闭,执行如下命令
此时,List of devices attached 下面会有设备出现了。
至此,结束。