Как настроить 2 эмулятора андроида в андроид студии, чтобы проверить реакцию родного приложения - PullRequest
1 голос
/ 20 мая 2019

Я добавил еще один андроид-эмулятор для теста приложенияative native 0.59. Я могу запустить 2 эмулятора. Команда adb devices имеет следующий вывод:

List of devices attached
emulator-5554   device
emulator-5556   device

Когда есть один эмулятор, я использую на терминале cmd для выполнения react-native run-android, а другой - для react-native log-android. Внутренний сервер работает на том же компьютере. Вот виртуальные устройства в Android Studio:

enter image description here

Я хотел бы запустить 2 приложения, представляющих 2 пользователей, одновременно подключающихся к бэкэнду, для тестирования. Я пытался запустить одно приложение, когда запущены 2 эмулятора и загрузка приложения происходит очень медленно. Похоже, что приложение 2 нужно запустить на 2 разных портах, и решения, которые я нашел в Интернете, похоже, не работают Также react-native log-android выдает ошибку при встрече с 2 эмуляторами.

Ответы [ 2 ]

1 голос
/ 28 мая 2019

Попробуйте запустить metro-bundler на 2 разных портах.Откройте в терминале проекта один терминал и используйте команду по умолчанию, как показано ниже:

react-native start

Это запускает один сервер на порту 8081 по умолчанию.

И на другом терминалеrun

react-native start --port=9090

Запускается другой сервер с портом 9090

Теперь на третьем терминале запускается

react-native run-android

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

Когда приложения запускаются правильно, выберите один эмулятор и откройте меню разработчика, используя Ctrl+M.

Нажмите кнопку Dev Settings внизу.

Нажмите Отладочный серверhost & port для кнопки устройства.

Введите localhost: 9090 или ip_address: 9090 и нажмите кнопку OK

Перезагрузите приложение, и оно будет получать пакет js из вашего react-native server, работающего на порту 9090

1 голос
/ 21 мая 2019

log-android из react-native CLI просто использует adb logcat для отображения журналов Android.

adb имеет параметр -s, который позволяет указать серийный номер эмулятора.Сначала вам нужно перечислить открытые устройства, используя adb devices.Вы получите список, например:

List of devices attached
emulator-5554   device

Теперь вы можете указать конкретное устройство:

adb -s emulator-5554 logcat *:S ReactNative:V ReactNativeJS:V

Вы можете запустить его несколько раз для всех запущенных устройств, которые выхотите посмотреть логи для.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...