我真的是爱上了linux 系统,它的快速高效让我沉醉,开发android 部署到真实手机上必要的,但是手机官网没有给我们提供linux下的驱动,怎么办?不急,看了下面你就知道怎么办了!
1. 首先,我们需要ADT工具包,做Android开发的都知道,这些东西在SDK里面就有了,然后设置环境变量,具体操作我就不说了,度娘或Google吧,当然你也可以在/usr/bin下作一个符号链接到adb那里,总之,能够在Terminal上使用adb命令就行了。
2. 在 /etc/udev/rules.d/ 下添加一个文件,命名为 ##-android.rules,注意这里的##为50或70,按照原文的说法是,如果你运行的是Gusty/Hardy/Dapper,那就用50,如果你运行的是 Karmic Koala/Lucid Lynx/Maverick Meerkat那就用70(我进去文件下面时都是70开头的,于是就写70了咯)
然后在里面加一行文字,注意这里需要找到你手机型号对应的Vendor ID,啥叫Vendor ID?别问我,我也不知道,但原文有给出几种机型的Vendor ID,我在这里把它贴出来:
USB Vendor IDs
MANUFACTURER | USB VENDOR ID |
---|---|
Acer | 0502 |
Dell | 413c |
Foxconn | 0489 |
Garmin-Asus | 091E |
HTC (Older Phones) | 0bb4 |
HTC (Newer phones) | 18d1 |
Huawei | 12d1 |
Kyocera | 0482 |
LG | 1004 |
Motorola | 22b8 |
Nexus One/S | 18d1 |
Nvidia | 0955 |
Pantech | 10A9 |
Samsung | 04e8 |
Sharp | 04dd |
Sony Ericsson | 0fce |
ZTE | 19D2 |
如上标红的字体,我的手机是华为的,所以Vendor ID是12d1,找到Vendor ID后,就在刚刚新建的文件中一行:
SUBSYSTEM=="usb",SYSFS{idVendor}=="12d1", MODE="0666"
最后保存,并给它赋予可读可执行的权限,命令如下:
#sudo chmod a+rx /etc/udev/rules.d/50-android.rules
这样子就可以了?别急,重启一下机器,重启后用adb devices命令测试一下,若是有看到 XXXXX device就说明成功了,虽然我这里的全是问号,现在,可以用adb install来安装apk程序咯!
###################################################################
刚刚发现,在Eclipse上不能直接Run As -> Android Application来调试android程序,提示:
Failed to install test.apk on device '????????????': adb rejected install command with: device not found
后来在网上找了很久,看到有个牛人自己修改了adb文件修复了这个问题,再此共享出来,遇到同样问题的友友不访试一下,下载地址:
http://download.csdn.net/detail/qq280948982/3791652
下载后将它覆盖到原来SDK下的platform-tools/adb(覆盖之前先备份以防万一),并使用命令:
#adb kill-server && adb start-server
到这里时有可能出现权限不足,这样你就要把覆盖的adb修改为可执行文件.右击--》属性--》权限--》允许以程序执行文件
然后再用adb devices看下,这时你会发现显示的不再是一串问号了,在Eclipse上也可以直接build程序到真机上了