一直以来在ubuntu下进行安卓手机开发,采用的是Eclipse下安装android插件。调试主要采用的是AVD虚拟安卓机器。可以毕竟是虚拟的,和实际真机还是有一些区别的,于是试着连接我的手机进行调试。
我的手机是 小米1S ,当时脑子发烧买的。刚开始我以为国产机,在Linux下的支持很不好。但是后来嵌入式玩多了,发现Google在开发安卓的时候就想到了方便调试这个问题,开发了ADB通讯协议,方便了安卓开发调试。而在LINUX下的ADB的支持也很好。LINUX下的ADB工具在Android SDK下的platform-tools目录下的adb,该目录下还有一个fastboot工具,看来linux下也可以刷机啊,有空试试。
其实LINUX上设备调用的麻烦事主要是权限的问题,但也正是LINUX的安全所在。
参考:blog.csdn.net/darkowner/article/details/6152390
转载请注明出处:
blog.csdn.net/canyue102/article/details/10414655
博主最近在电脑上自建了博客,以后会更多的用那个了,欢迎关注访问,里面也有很多有用资源:
http://www.embbnux.com/
一、数据线连接手机和电脑
命令行:
lsusb
显示以下信息:
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 13d3:5130 IMC Networks
Bus 002 Device 004: ID 18d1:9025 Google Inc.
其中的 Bus 002 Device 004: ID 18d1:9025 Google Inc. 就是描述我的小米手机的,记下ID 18d1 和名称Google Inc. ,ID和名称根据手机型号不同而区别。
二、新建50-android.rules 文件
命令行:
sudo gedit /etc/udev/rules.d/50-android.rules
输入行:
SUBSYSTEM=="usb", SYSFS{"Google Inc."}=="18d1", MODE="0666"
其中Google Inc. 和18d1为第一步所得到的
保存退出,
设置权限:
sudo chmod a+rx /etc/udev/rules.d/50-android.rules
sudo /etc/init.d/udev restart
三、启动ADB
进入SDK的platform-tools目录下,运行:
sudo ./adb kill-server
sudo ./adb devices
四、启动Eclipse应该能在Device下看到手机型号了,也就是可以。启动Device在Eclipse的Window>Show View>others>device。
调试方法就和在AVD下调试一样,只是选择的机器为你真是的机器罢了。
只要是安卓机,并且开发时加入了ADB驱动的,应该就可以用这个方法设置。
每次重启电脑,都得运行第三步的命令,可以写个脚本,方便连接:
新建mobile_connect.sh:
#! /bin/bash
cd /home/****/android/sdk/platform-tools
./adb kill-server&
./adb devices&
赋予运行权限:
sudo chmod +x mobile_connect.sh
移动到/usr/bin
sudo cp mobile_connect.sh /usr/bin
这样每次启动电脑,只要运行: sudo mobile_connect.sh 。就可以了,觉得名字太长,TAB键补全就好了,很方便。