ubuntu连接android设备(附最简单方法)

简介: 在ubuntu下连接android设备,虽然不用像windows那样安装驱动,然而却会遇见一个错误:输入adb shell,会提示insufficient permissions for device,输入adb devices,设备名称会显示 ????????等一大堆问号。

在ubuntu下连接android设备,虽然不用像windows那样安装驱动,然而却会遇见一个错误:输入adb shell,会提示insufficient permissions for device,输入adb devices,设备名称会显示 ????????等一大堆问号。

这是因为ubuntu默认是以非root用户运行的。如果要使用adb 进行usb调试,使用root账号去执行相关命令固然可以进入adb shell,但是却太麻烦。

另一种方法是配置udev的规则。方法如下:

1、输入lsusb,查看设备的ID号。如我的输出内容如下:

Bus 002 Device 008: ID 0bb4:0d02 High Tech Computer Corp.
Bus 008 Device 002: ID 046d:c52e Logitech, Inc.
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 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 009 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

其中Bus 002 Device 008: ID 0bb4:0d02 High Tech Computer Corp.这一行就是我的HTC手机的USB使用端口了。记住中间的这两个ID:0bb4和0d02。

2、sudo vi /etc/udev/rules.d/70-android.rules

如果没有这个文件,可以创建,然后加入以下内容

SUBSYSTEM=="usb",ATTRS{idVendor}=="0bb4",ATTRS{idProduct}=="0d02",MODE="0666"

3、修改权限

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

4、重启udev 服务:

sudo service udev restart

5、重启adb server。

重连设备,然后执行sudo ./adb kill-server

adb start-server

然后看看adb devices是否已经已经正常显示出设备的名称了。


PS:

最新修改方法,不用去看设备的ID,直接在rules.d下增加一个文件51-android.rules,内容为:

SUBSYSTEM=="usb" ENV{DEVTYPE}=="usb_device", MODE="0666"
目前通用于所有android设备。保存后如上面的步骤修改权限,重启udev和adb,然后重新插上手机就可以了。

目录
相关文章
|
11月前
|
存储 Android开发
如何查看Flutter应用在Android设备上已被撤销的权限?
如何查看Flutter应用在Android设备上已被撤销的权限?
567 64
|
10月前
|
Android开发 开发者
Android自定义view之利用drawArc方法实现动态效果
本文介绍了如何通过Android自定义View实现动态效果,重点使用`drawArc`方法完成圆弧动画。首先通过`onSizeChanged`进行测量,初始化画笔属性,设置圆弧相关参数。核心思路是不断改变圆弧扫过角度`sweepAngle`,并调用`invalidate()`刷新View以实现动态旋转效果。最后附上完整代码与效果图,帮助开发者快速理解并实践这一动画实现方式。
239 0
|
8月前
|
安全 数据库 Android开发
在Android开发中实现两个Intent跳转及数据交换的方法
总结上述内容,在Android开发中,Intent不仅是活动跳转的桥梁,也是两个活动之间进行数据交换的媒介。运用Intent传递数据时需注意数据类型、传输大小限制以及安全性问题的处理,以确保应用的健壯性和安全性。
541 11
|
11月前
|
存储 Android开发 数据安全/隐私保护
如何在Android设备上撤销Flutter应用程序的所有权限?
如何在Android设备上撤销Flutter应用程序的所有权限?
714 64
|
11月前
|
缓存 Android开发 开发者
Flutter环境配置完成后,如何在Android设备上运行Flutter应用程序?
Flutter环境配置完成后,如何在Android设备上运行Flutter应用程序?
2036 62
|
11月前
|
开发工具 Android开发 开发者
在Android设备上运行Flutter应用程序时,如果遇到设备未授权的问题该如何解决?
在Android设备上运行Flutter应用程序时,如果遇到设备未授权的问题该如何解决?
766 61
|
7月前
|
Ubuntu IDE 开发工具
修复Ubuntu启动时提示"无可启动设备"的问题。
上述步骤旨在提供一套综合的诊断与修复策略。在操作过程中应当小心谨慎,尤其是所有与分区表相关的操作,因为一旦不当操作可能导致数据丢失。若非专业人士则建议在进行重要操作之前备份数据,并在实施修复措施时考虑寻求专业技术人员的帮助。
473 0
|
10月前
|
Ubuntu Windows
处理ubuntu启动过程中报错error:proc_thermal_add错误的方法
了解以上方法,就像寻找鬼屋出口的吊灯,当初见“error:proc_thermal_add错误”时的恐惧不翼而飞。各位Ubuntu使用者都是勇敢的探险家,遇到的问题无非是丛林中的野兽,尝试、努力和坚持总能找到解决的办法。
278 21
|
10月前
|
存储 运维 Ubuntu
Ubuntu环境下NTP时间同步服务的离线安装方法
以上就是Ubuntu环境下离线安装和配置NTP时间同步服务的全过程。这种有效的操作不仅可为有网络隔离需求的安全重要环境提供参考,同时也能帮助研发、运维人员在同类情况下处理问题。太阳走过万丈高空,而我们通过NTP服务,轻松把握时间,如同手握流沙,控制每一颗时间粒子的行走。
1736 23
|
11月前
|
Ubuntu PHP Apache
在Ubuntu系统中为apt的apache2编译PHP 7.1的方法
以上就是在Ubuntu系统中为apt的apache2编译PHP 7.1的方法。希望这个指南能帮助你成功编译PHP 7.1,并在你的Apache服务器上运行PHP应用。
280 28