Linux下真机调试Android手机

Linux(openSUSE,Fedora 等所有发行版本适用)下的真机调试Android手机。

在Linux下真机调试Android手机时经常遇到insufficient permissions for device的错误,并且adb devices会出现乱码,也没有权限做adb的任何操作。下面的配置方法可以解决这个问题(环境为Opensuse11.3_64):

1. 进入Terminal,提升管理员权限(su)输入: vi /etc/udev/rules.d/50-android.rules,运行该命令打开文本编辑器。下面这段文字粘贴上,保存。
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666" 
以上不同手机输入的SYSFS{idVendor}==的值是不一样的 ,可以通过lsusb查看自己的手机的数字填写不同的数字。可以同时配置多个手机支持。# htc
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
# Motorola
SUBSYSTEM=="usb", SYSFS{idVendor}=="22b8", MODE="0666"
# Acer 0502
SUBSYSTEM=="usb", SYSFS{idVendor}=="0502", MODE="0666"
# Dell 413c
SUBSYSTEM=="usb", SYSFS{idVendor}=="413c", MODE="0666"
# Huawei 12d1
SUBSYSTEM=="usb", SYSFS{idVendor}=="12d1", MODE="0666"
# LG 1004
SUBSYSTEM=="usb", SYSFS{idVendor}=="1004", MODE="0666"
# Nvidia 0955
SUBSYSTEM=="usb", SYSFS{idVendor}=="0955", MODE="0666"
# Samsung 04e8
SUBSYSTEM=="usb", SYSFS{idVendor}=="04e8", MODE="0666"
# Sharp 04dd
SUBSYSTEM=="usb", SYSFS{idVendor}=="04dd", MODE="0666"
# Sony Ericsson ofce
SUBSYSTEM=="usb", SYSFS{idVendor}=="0fce", MODE="0666"
# ZTE 19d2
SUBSYSTEM=="usb", SYSFS{idVendor}=="19d2", MODE="0666"

常见的配置如下:

2. 继续在Terminal执行:
 chmod 777 /etc/udev/rules.d/50-android.rules
 /etc/init.d/udev restart
3. 进入android-sdk中的tools目录(或者platform-tools,看情况)执行以下命令行:
sudo ./adb kill-server
sudo ./adb shell
su
exit
4. 退出adb后,再尝试执行:
sudo ./adb remount
sudo ./adb devices
必须是sudo
显示出真机设备的编号表明连接成功。

进入eclipse,在project explorer中右键点击要安装的工程
->Run As->Run Configurations,把运行的target修改为手动(Manual)。
然后Run,这时会提示选择目标,选择真机即可。
(没有显示出真机时,试试将usb线拔掉再插上)
posted @ 2012-11-06 16:13  sfshine  阅读(392)  评论(0编辑  收藏  举报