我目前正在尝试通过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