Экспо / GenyMotion выдает "ADB сервер не получил подтверждение" при запуске проекта - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь настроить проект React Native, используя GenyMotion и Expo на Ubuntu. Однако, когда я нажимаю кнопку «Устройство» в Expo, чтобы упаковать приложение в эмулятор, в консоли Expo появляется следующая ошибка:

ADB Server didn't ACK error

Сначала я пытался использовать React Native через Android Studio со встроенным эмулятором Android, поэтому подумал, что проблема может заключаться в том, что на моем компьютере установлено несколько версий ADB (когда я запускал $ adb --start-server из терминала, он запускал Android Studio двоичный, а не GenyMotion один). Итак, я:

  • Удалено все, что я мог найти в Android Studio, включая SDK на Android/Sdk/ и теперь $ adb --start-server
  • Ран $ sudo apt-get remove adb android-tools-adb
  • Установите путь к файлу для Android SDK в GenyMotion для моего GenyMotion Android SDK. Но я предполагаю, что это то же самое, что и настройка по умолчанию, поэтому я не знаю, нужно ли мне это делать?

    GenyMotion Android SDK

  • Из моего .bashrc файла удалены все переменные пути, связанные с Android Studio, включая $ANDROID_HOME. (следует ли вместо этого установить $ANDROID_HOME для указания на GenyMotion Android SDK?

После выполнения вышеизложенного $ ps -aux | grep 5037 выдает следующее:

ps output

даже после выхода из GenyMotion и Expo, похоже, что все еще работает раздвоенный демон ADB. Если я cd перехожу на мой GenyMotion SDK и запускаю $ ./adb kill-server (после выхода из GM и Expo), этот процесс больше не отображается в выводе ps. Тем не менее, что интересно, если я запускаю $ ./adb start-server, я получаю это:

ADB out of date

Но я не знаю, как обновить версию GenyMotion ADB. Это также указывает на то, что существуют разные серверные и клиентские программы ADB. Это правильно? Я только когда-либо взаимодействовал с двоичным файлом adb в папках SDK.

ОБНОВЛЕНИЕ: Я попытался снова запустить ADB из терминала, и не могу воссоздать конфликтующую версию ошибки. Сервер теперь отлично запускается.

У меня также были проблемы с туннелированием, не работающим в Экспо, поэтому я изменил хост на localhost. Это работает, но я не уверен точно, каковы последствия этого изменения:

Expo host change

Очевидно, я довольно новичок в разработке под Android, и в частности GenyMotion / Expo. Но я думаю, что я был довольно тщательным в устранении неполадок. Что еще я могу попробовать?

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

Решением для меня было то, что у меня в системе установлено несколько adb. И версия adb в моей системе отличается от версии adb на платформе android sdk platform-tools.

Я просто добавляю в PATH нужную папку C: \\ Ragnulf \ AppData \ Local \ Android \ Sdk \ platform-tools

0 голосов
/ 03 июля 2018

Решением, по крайней мере для меня, было то, что мне нужно было добавить export PATH="/home/darik/projects/android/genymotion/tools:$PATH" в мой файл .bashrc. Я предполагаю, что причиной того, что сервер ADB не был ACKing, было то, что Expo не смог найти сервер ADB в моей переменной env пути.

...