Я пытаюсь настроить проект React Native, используя GenyMotion и Expo на Ubuntu. Однако, когда я нажимаю кнопку «Устройство» в Expo, чтобы упаковать приложение в эмулятор, в консоли Expo появляется следующая ошибка:
Сначала я пытался использовать 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. Но я предполагаю, что это то же самое, что и настройка по умолчанию, поэтому я не знаю, нужно ли мне это делать?
Из моего .bashrc
файла удалены все переменные пути, связанные с Android Studio, включая $ANDROID_HOME
. (следует ли вместо этого установить $ANDROID_HOME
для указания на GenyMotion Android SDK?
После выполнения вышеизложенного $ ps -aux | grep 5037
выдает следующее:
даже после выхода из GenyMotion и Expo, похоже, что все еще работает раздвоенный демон ADB. Если я cd
перехожу на мой GenyMotion SDK и запускаю $ ./adb kill-server
(после выхода из GM и Expo), этот процесс больше не отображается в выводе ps
. Тем не менее, что интересно, если я запускаю $ ./adb start-server
, я получаю это:
Но я не знаю, как обновить версию GenyMotion ADB. Это также указывает на то, что существуют разные серверные и клиентские программы ADB. Это правильно? Я только когда-либо взаимодействовал с двоичным файлом adb
в папках SDK.
ОБНОВЛЕНИЕ: Я попытался снова запустить ADB из терминала, и не могу воссоздать конфликтующую версию ошибки. Сервер теперь отлично запускается.
У меня также были проблемы с туннелированием, не работающим в Экспо, поэтому я изменил хост на localhost. Это работает, но я не уверен точно, каковы последствия этого изменения:
Очевидно, я довольно новичок в разработке под Android, и в частности GenyMotion / Expo. Но я думаю, что я был довольно тщательным в устранении неполадок. Что еще я могу попробовать?