Автоматический запуск приложения на нескольких устройствах в Android Studio

112

У меня к компьютеру подключено несколько устройств Android. Когда я пытаюсь запустить разрабатываемое мной приложение, Android Studio всегда предлагает мне выбрать устройство. Есть ли способ автоматически развернуть приложение на нескольких устройствах - нажав кнопку «Выполнить» или, что еще лучше, с помощью ярлыка?

tomrozb
источник
Предположительно, вы могли бы использовать сценарий команды оболочки adb, amкоторую вы можете найти в документации Android или в многочисленных вопросах здесь, использовать что-то вроде xargs или цикла for для перебора всех устройств, а затем настроить IDE для запуска сценария из пользовательская кнопка или меню. Если вы также ожидаете (повторной) установки, вам adb install -r somefile.apkсначала нужно будет сделать это в своем скрипте.
Chris Stratton

Ответы:

304

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

damccull
источник
19
Да, но поскольку на этот вопрос так и не ответили, теперь другие будут знать, как это сделать. В интерфейсе это не совсем очевидно.
damccull
Какую версию ide вы используете? Если вы не используете последнюю версию, вам следует обновить ее.
damccull
Если вы нажмете Shift, выберите все устройства и нажмите «Запустить на том же устройстве в следующий раз», даже если он не «поместит множественное число« устройств », он будет автоматически запускаться на всех следующих устройствах.
OWADVL
есть ли способ сделать это на Mac? Мне не удалось выбрать несколько устройств.
Guness 02
12
Ох, я только что понял, что пытаюсь отлаживать приложения, а не запускать их. AS позволяет запускать несколько устройств, но отлаживать только одно.
Guness
30

Для новых пользователей в Android Studio 2 также необходимо отключить «Мгновенный запуск» в Настройках-> Сборка, Выполнение, Развертывание-> Мгновенный запуск. См. Мгновенный запуск .

С Instant Run вы можете работать только с одним устройством одновременно.

ОБНОВИТЬ

В Android Studio 2.1 он автоматически отключается при одновременном запуске на нескольких устройствах.

Развертывание на несколько устройств

Instant Run использует различные методы для выполнения горячей, теплой и холодной замены, которые зависят от уровня API целевого устройства. По этой причине при одновременном развертывании приложения на нескольких устройствах Android Studio временно отключает Instant Run.

Рафаэль Гутьеррес
источник
1
Android Studio 2.3, этот или любой из предыдущих ответов не работают. Я очень надеюсь, что для этого есть решение.
ᴛʜᴇᴘᴀᴛᴇʟ
6

Я получил новое обновление Android Studio, то есть Android Studio 3.5

Android Studio 3.5
Build #AI-191.8026.42.35.5791312, built on August 9, 2019
JRE: 1.8.0_202-release-1483-b03 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows Server 2016 10.0

В этом обновлении они добавили встроенную опцию для запуска приложения на нескольких устройствах.

В среде IDE появилось новое раскрывающееся меню, которое позволяет быстро выбрать устройство, на котором вы хотите развернуть приложение. Это меню также включает новую опцию, позволяющую запускать приложение на нескольких устройствах одновременно.

введите описание изображения здесь

Обновите новую версию Android Studio и наслаждайтесь.

Пратик Бутани
источник
15
К сожалению, он не запоминает ваш выбор, поэтому вам нужно повторно выбирать их каждый раз при запуске.
Ryan R
13
Да, это обновление - причина, по которой я здесь. Это усугубляет ситуацию, потому что обходной путь и запоминание больше не работают. Давайте проверим примечания к выпуску 3.6 Canary :-)
Christian Ruppert
Да, был не первым, продолжение см. Здесь: stackoverflow.com/questions/57613864/…
Кристиан Рупперт
3
Мне не нравится, когда я не запоминаю выбор на нескольких устройствах и не пытаюсь запустить эмулятор, если новое подключенное устройство еще не было распознано. Они еще раз исправили то, что никогда не ломалось. Вздох.
Гришка
5

В качестве дополнения, если вы хотите запускать тесты на нескольких устройствах, вы не можете выбрать несколько устройств в диалоговом окне выбора устройства для профиля Test. Вместо этого вам нужно запустить команду gradle connectedCheck. Это запустит ваши тесты на всех подключенных устройствах. Для него нет встроенного пользовательского интерфейса (например, вы запускаете тесты на одном устройстве), но он предоставляет ссылку на локально сгенерированный HTML-файл со сводкой теста.

Вы можете запускать из командной строки или внутри AS, посмотрите в Gradle projectsокне в разделе: Приложение (или корневой проект) -> Задачи-> проверка.

Ссылка: https://stackoverflow.com/a/18592367/1544046 : описание для эмуляторов, но также работает для устройств.

JCricket
источник
0

Начиная с Android Studio 2.3.3. Отключите мгновенный запуск, используйте меню «Выполнить» -> «Выполнить приложение» (в Windows Shift + щелкните для устройства, которое вы хотите развернуть)

вы не можете развернуть на нескольких устройствах, если использовали приложение run-> debug

Сэм
источник
0

Легко запускать все подключенные устройства каждый раз. Просто выберите все подключенные устройства, пока Android Studio показывает «Выбрать цель развертывания» и выберите «Использовать тот же выбор для будущих запусков».

NB Помните, что все устройства работают последовательно одно за другим.

введите описание изображения здесь

Шихаб Уддин
источник
0

В Android Studio 3.5. Работайте на нескольких устройствах.

введите описание изображения здесь

linkaipeng
источник
1
Он все еще не запоминает мой выбор на нескольких устройствах
Анбусельван Рокки
0

Android Studio 3.5+ имеет проблему при последовательном выборе и запуске нескольких устройств:

Билет: https://issuetracker.google.com/issues/140056248

Нам нужно подождать, пока Google исправит эту проблему.

Если вам нужна эта версия, используйте Android Studio 3.5 и ниже.

Мерлин Джеякумар
источник
-3

Очень просто.

CTRL + Shift на каждом устройстве.

Все это

Ричард Камере
источник