我目前正在尝试通过ADB连接到我的Android设备的docker容器 . ADB能够看到设备已连接但无法获得访问所需设备所需的权限 .
通常我会通过运行一个简单的adb kill-server然后运行sudo adb-devices来快速解决这个问题 . 不幸的是,sudo adb设备无法识别是否连接了任何设备 . 如果我在sudo命令执行后的任何时候尝试执行adb设备,我会遇到以下错误:
* daemon not running. starting it now on port 5037 *
cannot bind 'local:5037'
ADB server didn't ACK
* failed to start daemon *
error: cannot connect to daemon
在此之后,即使我运行另一个kill-server,我也会在adb设备请求中收到相同的错误 . 为了解决这个问题,我必须手动删除请求生成的socket / tmp / 5037 .
此时我的主要目标是访问我试图测试的ADB设备 . 是否有一些我遗失的步骤可能导致这种奇怪的行为?
供参考:
-
usb调试已启用,我可以从包含在其上运行的docker容器的框中插入设备 .
-
我确保在容器中运行adb kill-server,然后在容器内运行adb start server .
lsusb列出的设备:
Bus 001 Device 012: ID 0c2e:0ba1 android_device_name
/ etc / udev /中的99-android.rules条目:
SUBSYSTEM=="usb", ATTR{idVendor}=="0c2e", GROUP="plugdev" MODE="0666"
SUBSYSTEM=="usb",ATTR{idVendor}=="0c2e",SYMLINK+="android_adb"
SUBSYSTEM=="usb",ATTR{idVendor}=="0c2e",SYMLINK+="android_fastboot"
我的adb_usb.ini
0x067e
0x0c2e
0x05c6
1 回答
您需要在手机中启用USB调试 . 在手机上转到
设置
一般
开发人员选项
USB调试
在Android 4.2及更高版本中,“开发人员选项”菜单和“USB调试”选项已被隐藏 . 在以前的4.X版Android中,USB Debugging选项位于Developer Options菜单下 . 首先,您需要启用“开发人员选项菜单” .
单击“菜单”按钮进入App抽屉 . 前往设置” . 向下滚动到底部,然后点击“关于手机”或“关于平板电脑”,向下滚动到“关于手机”的底部,找到“构建号码”字段 .
点击内置编号字段七次以启用开发人员选项 . 点击几下,你会看到一个倒计时,上面写着“你现在离开发人员只有3步之遥 . ”完成后,您将看到消息“您现在是开发人员!” . 点击“返回”按钮,您将在“设置”屏幕上的“系统”下看到“开发人员选项”菜单 . 现在,您可以启用USB调试模式 .
转至设置>开发人员选项> USB调试 . 点击USB Debugging复选框 .