Android 4.2.2 - adb в автономном режиме, даже после обновления SDK
Изменить: Исправлено! Похоже, для этого существует очень много возможных причин. Мой был одним из самых необычных...
Я обновил SDK Tools до 21.1 и Platform-tools до 16.0.1. Проверено с помощью adb version
, что я запускаю v1.0.31. Моя машина разработки работает под управлением Windows 7, x64.
У меня есть 4 4.2.2 устройства для тестирования с Galaxy Nexus с разблокированным загрузчиком, но не с корнем, и Nexuses One, 4, 7 и 10, все запасы.
Nexus One, будучи < 4.2.2, отлично работает с adb, но все устройства 4.2.2 отображаются как "офлайн" в adb, и я НИКОГДА не видел, как на устройствах появилось диалоговое окно безопасности RSA, даже после нескольких перезапусков ADB (используя kill-server
), ПК и самих устройств.
Попробовали использовать разные порты и кабели USB. Я использую стандартные драйверы интерфейса Android ADB из SDK, но также попробовал драйверы Android Composite ADB Interface и Samsung Composite ADB Interface. Я даже полностью переустановил SDK из пакета ADT.
Странно, мой коллега может получить всплывающее окно для показа на тех же устройствах без каких-либо проблем. Я даже скопировал его adb.exe и dll и попробовал это, и он все равно не будет работать на моем. Он не установил из комплекта; он установил ADT в Eclipse, старомодный способ, но я сомневаюсь, что это изменило бы ситуацию. Что дает?!
Редактировать 26/02/2013, 16:41 GMT: Только что выпущено обновление для Platform-tools 16.0.2. Не обновил ADB (по-прежнему v1.0.31) и все еще видит устройство в автономном режиме, и всплывающее окно безопасности RSA не отображается.
Ответы
Ответ 1
Оказывается, у меня была переменная среды ANDROID_SDK_HOME
, указывающая на старое местоположение, которое больше не существует. Это не вызвало каких-либо других проблем (как ни странно), но, похоже, это препятствовало процессу аутентификации RSA. Вероятно, должно было это увидеть, когда я проверял переменную PATH на другой неделе, но неважно.
Я нашел странное место, запустив следующее и проверив показание:
adb kill-server
set ADB_TRACE=all
adb nodaemon server
После обновления местоположения и перезагрузки моего ПК он теперь работает нормально. Спасибо всем, кто ответил.
Ответ 2
Лучшее решение, которое я нашел когда-либо:
- Проверьте свою версию adb с помощью команды:
adb version
для Windows и ./adb version
для Linux.
- Если он показывает 1.0.29, обновите его до 1.0.31, потому что 1.0.29 не будет отвечать за JB 4.2.X
- Он устранит проблему вашего устройства в автономном режиме.
- Если ваша система уже имеет новый adb (1.0.31) и сталкивается с этой проблемой, в этом случае откройте sdk и инструменты платформы обновления до 16.0.1
- Перезагрузите устройство хотя бы один раз..:) он будет работать нормально для всех устройств...
Ответ 3
У меня была такая же проблема, и это то, что сработало для меня: если вы создали несколько учетных записей пользователей на своем устройстве Nexus 7, то вы не получите всплывающее окно безопасности, если вы не вошли в систему с тем же который использовался для включения отладки USB на устройстве. Сделайте это, и когда вы увидите всплывающее окно, убедитесь, что вы проверяете параметр, который говорит "всегда доверяйте этому компьютеру", а затем он должен работать и для других учетных записей.
Ответ 4
ADB_TRACE обнаружил ответ на мою проблему (проблема с правами доступа с папкой ~/.android в моей системе Linux предотвращала генерирование ключа). Большое спасибо за это.
Ответ 5
Это определенно будет работать:
В платформенных инструментах удерживайте shift и щелкните правой кнопкой мыши.
Выберите здесь команду командной строки.
adb kill-server
adb
Скажите "да" всплывающее окно на телефоне.
Ваше устройство будет подключено.
Если все еще не работает, попробуйте снова подключить устройство и проверить устройства adb
Ответ 6
Я сделал это, и он работает на моих окнах 8:
- Открыть компьютер - Управление в диспетчере файлов
- В утилите "Сервис/диспетчер устройств" удалите все существующие связанные с Android элементы.
- Нажмите "Сканировать аппаратные изменения".
- Устройство отображается как предупреждающий знак.
- щелкните правой кнопкой мыши на устройстве, нажмите "Обновить программное обеспечение драйвера".
- выберите ANDROID_SDK_HOME\sdk\extras в качестве источника драйверов.
- На устройстве выключите и включите USB-отладку (или несколько раз)
Ничего себе, всплывающее окно появляется на устройстве!
Ответ 7
Несколько файлов adb.exe?
Моя проблема была решена при удалении копии OLD adb.exe с C:/Windows/.
Я не знаю, как копия adb.exe попала на C:\Windows \?
Когда я запускаю adb.exe из android-sdk/platform-tools/, у меня не было проблем с обнаружением.
Ответ 8
У меня была такая же проблема и настройка. Windows 7, x64, Eclipse Indigo, один пользователь на устройстве и т.д.
Я пробовал adb devices
с помощью v1.0.31, и ни при каких обстоятельствах я не видел всплывающее окно на устройстве. Я пробовал всевозможные комбинации включения/выключения отладки, подключения USB назад и вперед, перезапуска устройства и т.д. Ничего не работало. Я также попробовал укоренять устройство, чтобы вручную скопировать файл палец. Однако устройство перестало ремонтировать (никому не рекомендовать). У меня более одного Nexus 10, поэтому я старался с другими.
Я использую bootcamp, хотя (используя Windows на ноутбуке Mac), поэтому последняя попытка состояла в том, чтобы попробовать то же самое в OSX. С первой попытки, сделавшей ./adb devices
с терминала, появилось всплывающее окно. Я принял отпечаток пальца, и теперь он работает в OSX.
Я предпочитаю Windows поверх OSX, поэтому это не идеальный обходной путь, поскольку я все еще не могу заставить его работать в Windows. Я буду следить за решениями для этого, но тем временем я надеюсь, что это поможет другим людям с проблемами bootcamp.
Ответ 9
Отладка отладки Android на устройстве и обратно. Это дало мне всплывающее окно устройства.
Ответ 10
Я запускаю Windows 7, одну учетную запись на Nexus7. Я должен был проверить флажок "всегда доверяй этому компьютеру", чтобы он работал. Неважно, сколько раз у меня получилось принять всплывающее окно и выбрать ОК. Это не сработало, пока я, наконец, не проверил коробку. Теперь это хорошо и распознается adb.
Ответ 11
Переключение с USB-драйверов Samsung (поставляемых с Nexus Root Toolkit) на USB-драйверы, предоставляемые Google (через их SDK), сделало трюк для меня.
Ответ 12
У меня была эта проблема, и я нашел ответ: либо я толкнул пальцем по телефону, либо не обращал на него внимания, либо просто не высказывался, говоря, что это RSA pubkey check, чтобы разрешить компьютер, я продолжал получать статус в автономном режиме. Я следил за каждым направлением на карте, из-за того, что в моем файле правил был LONG-список, чтобы переустановить ADB 50 раз. Да, это должна быть версия 1.0.31, которая у меня есть. Если это вы затем читаете....
Отключите устройство.
Используйте эти команды в терминале, если вы используете BASH.
adb kill-server
sudo bash
cd ~
mv .android BAK.android
Теперь, когда вы эффективно удалили исходный ключ RSA, убедитесь, что на устройстве включена USB Debugging. Повторно подключите устройство и обратите внимание на экран. Обязательно проверьте флажок "запомнить этот компьютер". Нажмите OK. Проблема решена.
Ответ 13
У меня была такая же проблема. Не уверен, что он применяется, но используете ли вы adb в качестве корня?
Для меня убивают сервер adb и делают:
sudo ./adb devices list
появилось сообщение о безопасности. После того, как он принял его и выполнил над командой, я, наконец, получил его для подключения.
Ответ 14
У меня была такая же проблема, как и у OP, но из копии adb.exe в C:\Windows, как и у user1269737. Это имело приоритет в Windows PATH, поэтому независимо от того, насколько я обновил его SDK, это не помогло бы, поскольку обновленный ADB не использовался.
Кто-то сказал мне, что это была версия пакета Android Studio, который установил его там (go figure...). Я не могу подтвердить это, потому что:
1. Текущие пакеты AS, похоже, не делают этого и...
2. Я устанавливаю много ПЗУ-мигалок/инструментов, которые объединяют ADB (XDA Developers).
Поэтому я не могу подтвердить, что это Android Studio.
Protip: используйте команды adb version
и where adb
в cmd, чтобы проверить, какая версия вы используете и какой исполняемый файл вы используете
Ответ 15
Я пробовал все эти вещи и до сих пор не мог заставить Windows отображать приглашение RSA на моем устройстве Android. После нескольких часов я так понял:
- Подключите устройство к ПК через USB
- [Ключ Windows] + [R] > [тип] devmgmt.msc
- Найдите свое устройство в списке
- [Правый клик] > Удалить
- Загрузите пакет драйверов Google USB: http://developer.android.com/sdk/win-usb.html#top
- Извлеките zip на рабочий стол
- Вернуться в devmgmt.msc > [Правый клик] корень деревa > Сканировать изменения оборудования
- Найдите свое устройство в списке
- [Правой кнопкой мыши] на вашем устройстве > Установить > Выбрать/просмотреть файлы
- Перейдите в папку usb_driver, которую вы извлекли на свой рабочий стол.
- Windows будет использовать драйвер Google USB вместо драйвера для вашего телефона.
Моя проблема заключалась в том, что драйвер LG был установлен в Windows. Как только я удалю это и установил драйвер Google, он отлично работает. RSA сразу отобразится.