其他人可能在 ubuntu linux 下遇到了 adb 调试问题。
症状是 USB 连接的 Android 设备的可用性,例如与日食。
你可以用以下方法测试这个
adb usb
当你拿到时
error: insufficient permissions for device
你可能会遇到和我一样的问题。
然而,我在互联网上发现了一些或多或少的次优解决方案
基本思想是以 root 身份启动 adb。我找到的解决方案很麻烦。
一项建议是通过 sudo 启动 adb。另一个建议是在 /etc/init.d 中设置启动脚本
我的解决方案是给adb以root身份启动的权限。为此,请切换到 root
sudo bash
chown root adb
chmod ug+s-w adb
安全狂热分子可能会建议
sudo chown root adb
sudo chmod ug+s-w adb
如果 adb 已经在运行,则需要杀死该恶魔才能以 root 权限启动
adb kill-server
当一切顺利时
adb usb
应该返回
restarting in USB mode
如果没有,请尝试 lsusb 检查您的设备是否已连接
Google 推荐的处理 ADB 设备权限的方法是创建 UDEV 规则,该规则将在设备枚举上设置适当的权限。
As per http://developer.android.com/tools/device.html http://developer.android.com/tools/device.html
如果您在 Ubuntu Linux 上进行开发,则需要添加 udev 规则
包含您所使用的每种设备类型的 USB 配置的文件
想用来开发。在规则文件中,每个设备
制造商由唯一的供应商 ID 标识,如
ATTR{idVendor} 属性。有关供应商 ID 的列表,请参阅 USB 供应商 ID,
以下。要在 Ubuntu Linux 上设置设备检测: 以 root 身份登录并
创建此文件:/etc/udev/rules.d/51-android.rules。使用这种格式
将每个供应商添加到文件中:SUBSYSTEM==“usb”,
ATTR{idVendor}==“0bb4”,MODE =“0666”,GROUP =“plugdev”
在此示例中,供应商 ID 是 HTC 的。模式分配
指定读/写权限,GROUP定义哪个Unix组
拥有设备节点。注意:规则语法可能略有不同
取决于您的环境。请查阅 udev 文档以了解您的情况
系统根据需要。有关规则语法的概述,请参阅本指南
编写 udev 规则。现在执行:chmod a+r
/etc/udev/rules.d/51-android.rules 通过 USB 插入时,可以
通过执行 adb devices 来验证您的设备是否已连接
您的 SDK platform-tools/ 目录。如果已连接,您将看到
设备名称列为“设备”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)