O que a pergunta diz realmente - você pode emitir qualquer comando diretamente para gradlew por meio da linha de comando para construir, empacotar e implantar em um dispositivo?
android
gradle
android-studio
gradlew
Matt Whetton
fonte
fonte
gradle tasks
é útil ver as tarefas prontas para uso - que incluem a instalação (mas não começando conforme declarado abaixo)Respostas:
Isso enviará o apk de compilação de depuração para o dispositivo, mas você terá que iniciar o aplicativo manualmente.
fonte
Como você está usando o Gradle, pode simplesmente adicionar sua própria tarefa em build.gradle
em seguida, chame-o na raiz do seu projeto
$ gradle appStart
Atualizar:
Se você estiver usando
applicationIdSuffix ".debug"
, adicione.debug
ao appId apenas, mas não altere a atividade:'com.example.debug/com.example.MyActivity'
fonte
'com.your.packagename/.path.relative.to.your.packagename.MyActivity'
vez de'com.example/.MyActivity'
se sua atividade não estiver na raiz do pacote.1. Construir projeto, instalar apk gerado no dispositivo
2. Abra o aplicativo no dispositivo
fonte
alias arun="./gradlew installDebug && adb shell am start -n com.example.package/.LauncherActivity"
# Executa a etapa 2 apenas quando a Etapa 1 é bem-sucedidaFrase de uma linha:
Crie o projeto e instale o apk gerado e abra o aplicativo no dispositivo
fonte
Existem três comandos para fazer isso:
./gradlew assembleDebug #To build the project
adb install -r ./app/build/outputs/apk/app-debug.apk #To install it to the device
adb shell am start -n $PACKAGE/$PACKAGE.$ACTIVITY #To launch the application in the device
, em que $ PACKAGE é o pacote de desenvolvimento e $ ACTIVITY é a atividade a ser iniciada (a atividade do iniciador).Estou escrevendo um script bash para fazer isso , com outros poucos recursos.
fonte
Uma maneira mais flexível de fazer isso é usando o macaco:
Algumas vantagens deste método:
getAdbExe
não requer que o adb esteja no caminho e usa a versão do adb do SDK apontado emlocal.properties
.monkey
ferramenta permite que você envie uma intenção do iniciador, então você não precisa saber o nome da sua atividade.fonte
adb shell am start your.package.name.debugsuffix\.Activity
Construir -> desinstalar versão antiga -> instalar nova versão -> executar aplicativo.
Ou se você deseja instalar e executar o aplicativo no tipo de depuração.
fonte
fonte
Escrevi esta tarefa para poder instalar e também abrir o aplicativo no dispositivo. Desde que eu tinha múltipla
buildTypes
eflavors
com diferentes ids de aplicação, não era viável para codificar o nome do pacote. Então eu escrevi assim:Isso lhe daria
open{variant}
para cadainstall{variant}
tarefa que você já tem.fonte