Ubuntu(Linux)下手机调试Android程序(小米手机连接上Android ADB)__Black铁木真的博客-程序员宝宝

技术标签: android  linux  

我觉得对于一个Android程序员来说,不能用手机调试程序是多么痛苦的一件事情呀!!!至少我是这样哈

刚用Ubuntu的我,马上就碰到了这个问题哈,我的小米2S不能够被android tools adb 识别到!

下面看下如何解决这个问题~~~~


1.找出小米2S设备接上电脑之后的ID属性信息

lsusb: 列出当前所有USB的使用情况,和使用USB的设备信息

通过这个命令,我们可以通过先lsusb,再把小米2s手机的usb拔掉,再lsusb的方法,来得到小米手机对应的ID信息


[email protected]:/home/xiaoyaomeng/software# 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 04f2:b1e5 Chicony Electronics Co., Ltd 
Bus 002 Device 003: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 002 Device 008: ID 2717:9039  (和下面的结果相比,很容易找出这个就是小米手机哈!)


[email protected]:/home/xiaoyaomeng/software# 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 04f2:b1e5 Chicony Electronics Co., Ltd 
Bus 002 Device 003: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
[email protected]:/home/xiaoyaomeng/software# 


2.设置设备属性信息到50-android.rules


sudo gedit  /etc/udev/rules.d/50-android.rules

在打开的50-android.rules中输入:

(我小米手机检测到的Bus信息是:Bus 002 Device 008: ID 2717:9039, 大家根据自己检测到的信息对应修改下面这段里的数字哈!)


SUBSYSTEM=="usb", SYSFS{idVendor}=="2717", MODE=="0666"
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="2717", MODE=="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="2717", ATTR{idProduct}=="9039", SYMLINK+="android_adb"


完了之后保存,给这个文件进行扩充权限


sudo chmod a+rx /etc/udev/rules.d/50-android.rules

这样就设置好了属性信息了,然后把正在运行的udev这个server重启一下,很容易理解,因为我们设置了属性哈,所以当然希望它重启哈!

sudo service udev restart  


3.重启adb,看看是否可以检测到手机设备了!

如果你没有把Android SDK的platform-tools加入到环境变量中,那么cd到Android SDK所在目录的platform-tools


cd 你androidSDK的目录/platform-tools/

sudo ./adb kill-server

sudo ./adb devices


如果你执行完这几条命令之后看到的是

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 

List of devices attached 下面没有其他Device信息的话,那么恭喜你,你需要进行第四步的操作了!!!因为手机设备没被检测到~~反之,则成功了!


4.创建或修改 adb_usb.ini

cd ~

cd .android/

sudo gedit adb_usb.ini


把内容修改成:


# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
0x2717(这个号码是第一步检测出来的手机设备对应的信息!)


保存之后退出即可...

之后再执行下第三步,看下这次结果怎么样,是否已经被识别到了!!!


可以看到List of devices attached下面多了一个设备信息哈~~~~~

好了,接下来我们就可以通过手机来调试我们的Android程序咯~~~

大爱Android

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/blackmanren/article/details/22665839

智能推荐

uva 12452 Plants vs. Zombies HD SP (树DP)_weixin_30394981的博客-程序员宝宝

Problem I: Plants vs. Zombies HD Super ProPlants versus Zombies HD Super Pro is a game played not a grid, but on a connected graph G with no cycles (i.e., a tree). Zombies live on edges of the tree ...

如何自学生物信息学:从菜鸟到专家_简佐义的博客的博客-程序员宝宝

看透了如此多的秘密,我们已停止相信尚有不可知之物。然而,那不可知之物却仍然坐在那里,冷静地舔着自己的嘴唇。 ——H.L. Mencken尽管人类已把航天器...

树莓派刷机(镜像下载并导入SD卡)_人工智能有点的博客-程序员宝宝_树莓派镜像下载

一、安装Win32DiskImager。Win32DiskImager是格式化SD卡并安装镜像的工具。下载方式一:官网下载 下载地址下载方式二:百度网盘下载 提取码:2q2s。打开Win32DiskImager,选择好镜像安装路径,安装步骤就是傻瓜式操作,一直点击next。二、下载树莓派镜像下载方式一:镜像可以去树莓派官网进行下载。下载方式二:百度网盘下载 提取码:n3ft三、导入镜像到SD卡1.SD卡插入电脑,打开Win32DiskImager。2.Device选择你插入的读卡器,此电

如何设置idea,只执行当前java文件,忽略其他java文件的编译错误_stevenxyy的博客-程序员宝宝

(1)java Complier设置为Eclipse。(2)设置启动项的配置,在最下面的那行,移除默认的build,添加为build no error check 即可

Rtools下载与安装(win10)_大火焰小豆丁的博客-程序员宝宝_rtools

文章大纲一、官网下载的小bug(已修复)二、下载Rtools三、安装Rtools,与Rstudio绑定附:镜像站点设置、常见问题几个关键点:1. 清华镜像:R for Windows Build Tools Archive2. Rtools和R、Rstudio是并列的,目前都在C:\Program Files目录下。(安装路径不能有中文)3. 配合Rstudio使用需要做一些操作(文中有)。其本质是在Rstudio的工作路径下(不是安装路径!获取工作路径:在R Studio中运行ge

随便推点

【MyBatis】XML配置environments(环境集合属性对象),mappers(映射器)_来日浅谈的博客-程序员宝宝

【MyBatis】XML配置environments(环境集合属性对象),mappers(映射器)1. 配置内容2. environments(环境集合属性对象)事务管理器(transactionManager)数据源(dataSource)数据库厂商标识(databaseIdProvider)3. mappers(映射器)1. 配置内容XML配置中的内容以及顺序SqlMapConfig.x...

为什么wait/notify/notifyAll被定义在Object类中,而sleep定义在Thread类中,wait/notify和sleep方法的异同_都是底层的博客-程序员宝宝

为什么wait/notify/notifyAll被定义在Object类中,而sleep定义在Thread类中因为java中每个对象都有一把称之为monitor监控器的锁由于每个对象都可以上锁,这就要求在对象头中有一个用来保存锁信息的位置这个锁是对象级别多大,而非线程级别的,wait/notify/notifyAll也都是锁级别的操作,他们的锁属于对象所以把他们定义在Object类中最合适,因为Objecct类是所有对象的父类因为如果把wait/notify/notifyAll方法定义在Thre

Kerberos的白银票据详解_weixin_30532987的博客-程序员宝宝

0x01白银票据(Silver Tickets)定义 白银票据(Silver Tickets)是伪造Kerberos票证授予服务(TGS)的票也称为服务票据。如下图所示,与域控制器没有AS-REQ 和 AS-REP(步骤1和2),也没有TGS-REQ / TGS-REP(步骤3和4)通信。由于银票是伪造的TGS,所以没有与域控制器通信。0x02白银票据的特点1.白银票据...

学习笔记2:Pytorch 神经网络初始化权重与偏置_只想飘一飘的博客-程序员宝宝_pytorch 神经网络自动更新权重与偏量

学习笔记2:Pytorch 神经网络初始化权重与偏置**class CONCAT_CNN(nn.Module): def __init__(self): super(CONCAT_CNN, self).__init__() self.conv1_1 = nn.Conv2d(1, 64, kernel_size=3, stride=1, padding=1) def forward(self, x): conv1_1 = F.relu

JT/T808模拟器、企业压测工具使用_lgoodbook的博客-程序员宝宝_jt/t808、809模拟、压测工具

网上能找到使用说明,但总会有一些坑,感觉很难受1. 安装mysql的msi文件2. 安装navicat3. 登录本地mysql 服务,新建数据库testmingo4.导入数据备份文件库里面大概有这些表5.新建用户 gps 、admin用户密码为[email protected]*3df)34c$3116.安装模拟终端,一路next安装好以后,如下图修改配置文件BasicConfig启动以后如上图,如果登录按钮是置灰的说明数据库没有连接上,仔细检查数据库和808服务器地址也可以在设置中配置输入a

推荐文章

热门文章

相关标签