Ubuntu 下不能识别android设备的解决方法
在eclipse下调试时发现找到的设备为'Unknow',很明确,系统不识别该设备,在官网有解决方法:http://developer.android.com/guide/developing/device.html#setting-up,全是E文,这里我就写写做个备案:
系统环境:ubuntu11.10
开始工作
1)在如下位置建立如下文件:“/etc/udev/rules.d/51-android.rules”
2)确保android设备已经与电脑连接,在Terminal输入lsusb,会出现设备的信息如
”Bus 001 Device 004: ID 18d1:0002 Google Inc. “
找到该信息并找到”ID“字段信息加入第3步中。
3)在”51-android.rules“文件中添加如下信息
SUBSYSTEM==”usb”, SYSFS{“idVendor”}==”2207″, MODE=”0666″
SUBSYSTEM=="usb", ATTR{idVendor}=="2207", ATTR{idProduct}=="0010", MODE="0666"
4) 运行以下命令:
sudo chmod a+rx /etc/udev/rules.d/51-android.rules
sudo /etc/init.d/udev restart
如果使用sudo /etc/init.d/udev restart出现错误提示如下:
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service udev restart
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the restart(8) utility, e.g. restart udev
udev start/running, process 2127
应该执行: sudo service udev restart
5) 在 android sdk 的platform-tools 目录下运行 (这一步很重要,必须要sudo)
sudo ./adb kill-server
sudo ./adb devices
若继续在Ubuntu 11.04 下执行adb devices命令, 返回的结果是:
List of devices attached ???????????? no permissions
这意味着,USB连接的设备是能够被识别的。经过上网查找之后,得知adb server需要以root的权限启动,于是有了如下命令:
www.linuxidc.com@linuxidc-laptop:~/Dev/Java/Android/android-sdk-linux_86/tools$ ./adb kill-server www.linuxidc.com@linuxidc-laptop:~/Dev/Java/Android/android-sdk-linux_86/tools$ sudo ./adb start-server * daemon not running. starting it now * * daemon started successfully *
第一条命令用来杀死当前正在运行的server, 第二条命令则以root的权限启动了新的server. 我们可以再次查看devices:
www.linuxidc.com@linuxidc-laptop:~/Dev/Java/Android/android-sdk-linux_86/tools$ ./adb devices List of devices attached HT848KV04386 device
到此为止在eclipse中再调试,最后上张图。
![点击查看原始大小图片](http://dl.iteye.com/upload/attachment/0071/8904/fb6a9506-e883-326d-8cf1-aa02519db6d8.png)