问题:
Linux环境下编写Android程序,将meizu MX2手机连接到电脑上,adb不识别该设备,显示如下:
List of devices attached
???????????? no permissions
原因:
1. 在linux下开发android程序,如果要在硬件设备上运行,需要为每一种设备类型添加udev规则文件,在该文件中指定供应商ID[1];
2. 同时,将设备的供应商ID添加到~/.android/adb_usb.ini中[2]。
解决:
1. 按照[1]的设置,建立/etc/udev/rules.d/51-android.rules并添加SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"。注意,meizu MX2好像没有供应商ID,采用了Google默认的供应商ID:18D1。
2. 将供应商ID添加到~/.android/adb_usb.ini中。
参考:
[1] https://developer.android.com/studio/run/device.html