Execute um aplicativo em vários dispositivos automaticamente no Android Studio

112

Tenho vários dispositivos Android conectados ao computador. Quando tento executar o aplicativo que estou desenvolvendo, o Android Studio sempre me pede para escolher o dispositivo. Existe alguma maneira de implantar o aplicativo em vários dispositivos automaticamente - clicando em Executar ou ainda melhor com um atalho?

tomrozb
fonte
Presumivelmente, você poderia usar o script do amcomando adb shell, que pode ser encontrado nos documentos do Android ou em várias questões aqui, usar algo como xargs ou um loop for para iterar em todos os dispositivos e, em seguida, configurar o IDE para executar o script de um botão ou menu personalizado. Se você também está esperando uma (re) instalação, precisará adb install -r somefile.apkfazê-lo primeiro em seu script.
Chris Stratton

Respostas:

304

Isso é quase fácil demais, na verdade. Quando você vir a lista de dispositivos aparecer após iniciar o aplicativo, basta deslocar ou clicar com o botão direito do mouse em cada dispositivo em que deseja iniciar. Só descobri isso por acaso. Espero que ajude.

Damccull
fonte
19
Sim, mas como essa pergunta nunca foi respondida, outros agora saberão como fazer isso. Não é exatamente óbvio na interface.
damccull
Qual versão do ide você está executando? Se você não estiver executando o mais recente, deve atualizar.
damccull
se você shold shift, selecione todos os dispositivos, e você clica em "Executar no mesmo dispositivo da próxima vez", mesmo que não coloque vários "dispositivos" ele será executado automaticamente na próxima vez.
OWADVL
existe uma maneira de fazer isso no Mac? Não consegui selecionar vários dispositivos.
guness
12
Ohh, acabei de perceber que estava tentando depurar aplicativos, não executar. AS permite executar vários dispositivos, mas depurar apenas um.
pistoleira
30

Para novos usuários, no Android Studio 2, você também precisa desabilitar "Instant Run" em Configurações-> Build, Execution, Deployment-> Instant Run. Veja Instant Run .

Com o Instant Run, você só pode trabalhar com um dispositivo por vez.

ATUALIZAR

No Android Studio 2.1, ele é automaticamente desativado quando executado em vários dispositivos ao mesmo tempo.

Implementando em vários dispositivos

O Instant Run usa técnicas diferentes para realizar trocas a quente, a quente e a frio que são específicas ao nível de API do dispositivo de destino. Por esse motivo, ao implantar um aplicativo em vários dispositivos ao mesmo tempo, o Android Studio desativa temporariamente o Instant Run.

Rafael Gutiérrez
fonte
1
Android Studio 2.3, esta ou qualquer uma das respostas anteriores não funcionam. Eu realmente espero que haja uma solução para isso.
ᴛʜᴇᴘᴀᴛᴇʟ
6

Recebi uma nova atualização do Android Studio que é o 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

Nesta atualização, eles adicionaram a opção embutida para executar o aplicativo em vários dispositivos.

O IDE tem um novo menu suspenso que permite selecionar rapidamente em qual dispositivo deseja implantar seu aplicativo. Este menu também inclui uma nova opção que permite executar seu aplicativo em vários dispositivos ao mesmo tempo.

insira a descrição da imagem aqui

Atualize a nova versão do Android Studio e aproveite.

Pratik Butani
fonte
15
Infelizmente, isso não lembra sua seleção, então você precisa selecioná-los novamente cada vez que os executa.
Ryan R
13
Sim, esta atualização é a razão de eu estar aqui. Isso torna tudo pior, porque a solução alternativa e lembre-se não funcionam mais. Vamos verificar o 3.6 Canary Release Notes :-)
Christian Ruppert de
Sim, não foi o primeiro, para um acompanhamento, veja aqui: stackoverflow.com/questions/57613864/…
Christian Ruppert
3
Não gosto de não lembrar da seleção em vários dispositivos e de tentar rodar em um emulador se um dispositivo recém-conectado ainda não foi reconhecido. Eles mais uma vez consertaram algo que nunca foi quebrado. Suspiro.
Grishka 01 de
5

Apenas como um ponto adicional, se você deseja executar seus testes em vários dispositivos, você não pode selecionar vários dispositivos na caixa de diálogo do seletor de dispositivo para um perfil de teste. Em vez disso, você precisa executar o comando gradle connectedCheck. Isso executa seus testes em todos os dispositivos conectados. Não há interface do usuário incorporada para ele (como você executa testes em um único dispositivo), mas fornece um link para um arquivo HTML gerado localmente com o resumo do teste.

Você pode executar a partir da linha de comando ou dentro do AS, olhe na Gradle projectsjanela em: App (ou projeto raiz) -> Tarefas-> verificação.

Ref: https://stackoverflow.com/a/18592367/1544046 : Descreve para emuladores, mas também funciona para dispositivos

JCricket
fonte
0

A partir do Android Studio 2.3.3 Desative o Instant Run use Menu Run-> Run App (no windows shift + clique no dispositivo que deseja implantar)

você não pode implantar em vários dispositivos se você usou run-> debug app

Sam
fonte
0

É fácil executar todos os dispositivos conectados sempre. Basta selecionar todos os dispositivos conectados enquanto o Android Studio mostra Selecionar destino de implantação e selecionar "Usar a mesma seleção para lançamentos futuros".

NB Lembre-se de que todos os dispositivos funcionam sequencialmente, um por um.

insira a descrição da imagem aqui

Shihab Uddin
fonte
0

No Android Studio 3.5. Execute em vários dispositivos.

insira a descrição da imagem aqui

linkaipeng
fonte
1
Ainda não me lembro da minha seleção em vários dispositivos
Anbuselvan Rocky
0

O Android Studio 3.5+ tem um problema ao selecionar e executar vários dispositivos sequencialmente:

Ingresso: https://issuetracker.google.com/issues/140056248

Precisamos esperar até que o Google retifique esse problema.

Se você precisar desta versão, use o Android Studio 3.5 e inferior.

Merlin Jeyakumar
fonte
-3

Muito simples.

CTRL + Shift em todos os dispositivos.

Isso tudo

Richard Kamere
fonte