проблемы с устройствами обнаружения быстрой загрузки Android

У меня были некоторые проблемы с получением fastboot для обнаружения устройств. У меня есть файл правил udev, настроенный следующим образом:

# adb protocol on passion (Nexus One)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e12", MODE="0666"
# fastboot protocol on passion (Nexus One)
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff", MODE="0666"
# adb protocol on crespo/crespo4g (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e22", MODE="0666"
# fastboot protocol on crespo/crespo4g (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e20", MODE="0666"
# adb protocol on stingray/wingray (Xoom)
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTR{idProduct}=="70a9", MODE="0666"
# fastboot protocol on stingray/wingray (Xoom)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="708c", MODE="0666"
# adb protocol on maguro/toro (Galaxy Nexus)
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", MODE="0666"
# fastboot protocol on maguro/toro (Galaxy Nexus)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e30", MODE="0666"
# adb protocol on panda (PandaBoard)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d101", MODE="0666"
# fastboot protocol on panda (PandaBoard)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d022", MODE="0666"
# usbboot protocol on panda (PandaBoard)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d010", MODE="0666"

и я также попробовал конфигурацию, указанную на странице сборки Android.

Я вижу устройство в порядке, пока оно не находится в режиме быстрой загрузки. Я запустил сервер с помощью команды adb start-server как в своей обычной учетной записи пользователя, так и в качестве администратора, и я могу видеть устройство в любом случае.

Я загружаюсь в загрузчик, чтобы попробовать использовать fastboot с помощью команды adb reboot bootloader, и телефон отвечает соответствующим образом. Однако после перезагрузки я не могу получить доступ к телефону с помощью fastboot. Когда я запускаю команду устройств fastboot как обычный пользователь, я получаю следующее:

$ fastboot devices
no permissions  fastboot

и когда я запускаю fastboot как root, я получаю следующее примерно 3/4 раза:

$ sudo ./fastboot devices
????????????    fastboot

Иногда срабатывает команда sudo fastboot, и она дает мне правильный MAC-адрес, связанный с подключенным устройством. Любые идеи относительно того, почему это произойдет?


person josh-cain    schedule 20.08.2012    source источник


Ответы (1)


Добавьте атрибут OWNER="{your userid}" в каждое правило udev.

Ссылка

person sanjivr    schedule 04.12.2012
comment
Я также попытался использовать конфигурацию, скопированную со страницы сборки Android (как описано в вопросе выше), которая имеет атрибут владельца группы - тот же эффект, что и то, что вы описываете. Простая проблема с разрешениями не объясняет, почему это происходит иногда, но не каждый раз (поскольку разрешения в Linux не меняются при последовательных вызовах). - person josh-cain; 05.12.2012
comment
Что ж, я заметил, что комбинация vendorid-productid, о которой сообщает lsusb (при условии, что вы находитесь на хосте unix/linux), отличается для следующих сценариев (a) нормальный режим (b) режим отладки (c) режим быстрой загрузки (d ) режим ptp (e) режим mtp. Я перечислил все эти комбинации в своих правилах udev. Можете ли вы попробовать то же самое и проверить? Иногда у вас может возникать проблема в зависимости от того, как вы подключены к компьютеру и какой режим действует в данный момент. - person sanjivr; 14.12.2012