Quiero compilar una aplicación de Android Studio (el sistema de compilación Gradle), pero quiero hacerlo a través de la línea de comandos.
Quiero compilar una aplicación de Android Studio (el sistema de compilación Gradle), pero quiero hacerlo a través de la línea de comandos.
Respuestas:
Android Studio crea automáticamente un contenedor de Gradle en la raíz de su proyecto, que es cómo invoca a Gradle. El contenedor es básicamente una secuencia de comandos que llama al binario real de Gradle y le permite mantener actualizado a Gradle, lo que facilita el uso del control de versiones. Para ejecutar un comando Gradle, simplemente puede usar el gradlew
script que se encuentra en la raíz de su proyecto (o gradlew.bat
en Windows) seguido del nombre de la tarea que desea ejecutar. Por ejemplo, para crear una versión de depuración de su aplicación de Android, puede ejecutarla ./gradlew assembleDebug
desde la raíz de su repositorio. En una configuración de proyecto predeterminada, el apk resultante se puede encontrar en app/build/outputs/apk/app-debug.apk
. En una máquina * nix, también puede simplemente correr find . -name '*.apk'
para encontrarla, si no está allí.
c:\path_to_my_app\gradlew.bat ./gradlew assemblyDebug
y me mostró Descargando services.gradle.org/distributions/gradle-2.10-all.zip . Y está atascado allí. ¿Qué extraño?
./gradlew installArm7Debug
. Otras tareas son fáciles de encontrar./gradlew tasks
./gradlew assembleDebug
y ./gradlew installDebug
comandos. En AndroidStudio hay una consola que monitorea todas las actividades del dispositivo Android en tiempo real (por ejemplo, si el dispositivo Android falla, la consola imprime el rastro de excepción). ¿Cómo obtener esta instalación de monitoreo en una terminal?
Pruebe esto (solo OS X):
brew install homebrew/versions/gradle110
gradle build
Puede usar gradle tasks
para ver todas las tareas disponibles para el proyecto actual. No Android Studio
se necesita aquí.
existen dos tipos de compilación para compilar su aplicación utilizando la configuración de compilación de Gradle: una para depurar su aplicación, depurar, y otra para compilar su paquete final para el modo de lanzamiento.
Primero navegue a la carpeta raíz del proyecto de estudio de Android usando CMD
ejecuta este comando gradlew.bat assembleDebug
Edite el archivo build.gradle para construir su proyecto en modo de lanzamiento:
android {
...
defaultConfig { ... }
signingConfigs {
release {
storeFile file("myreleasekey.keystore")
storePassword "password"
keyAlias "MyReleaseKey"
keyPassword "password"
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release
}
}}
Hecho ¡Buena suerte!
Este es un intento de una guía completa
Ya sea
./gradlew
, o gradlew.bat
si está en Windows
chmod +x ./gradlew
puede ser necesarioA partir de este momento, se gradle
refiere a ejecutar Gradle de cualquier forma que haya elegido. Sustituir en consecuencia.
Si ha instalado manualmente el SDK
export ANDROID_HOME=<install location>
~/.profile
si no se hace automáticamenteAcepta las licencias: yes | sdkmanager
sdkmanager
puede encontrarse en $ANDROID_HOME/tools/bin
sdkmanager
puede tener que ejecutarse como rootIntenta correr gradle
chown -R user:group $ANDROID_HOME
chmod 777 -R $ANDROID_HOME
gradle tasks
enumera todas las tareas que se pueden ejecutar:app:[appname]
es el prefijo de todas las tareas, que verás en los registros de Gradle cuando construyas
Algunas tareas esenciales
gradle assemble
: crea todas las variantes de tu aplicación
app/[appname]/build/outputs/apk/[debug/release]
gradle assembleDebug
o assembleRelease
: cree solo las versiones de depuración o lanzamientogradle installDebug
o installRelease
compilar e instalar en un dispositivo conectado
adb devices
, verifique que su dispositivo esté en la lista y que el dispositivo esté al ladoConstruir e instalar automáticamente ante cambios
Esto evita tener que ejecutar continuamente los mismos comandos
gradle -t --continue installDebug
-t
: también conocido como --continuous
, automáticamente vuelve a ejecutar la tarea después de cambiar un archivo--continue
: Continuar después de errores. Evita detenerse cuando ocurren erroresgradle -h
por más ayudagradlew
(En Windows gradlew.bat
)
adb install -r exampleApp.apk
(Esto -r
hace que reemplace la copia existente, agregue una -s
si se instala en un emulador)
Configuré un alias en mi ~/.bash_profile
, para que sea un comando 2char.
alias bi="gradlew && adb install -r exampleApp.apk"
(Abreviatura de construir e instalar)
Solo para usuarios de MAC
Extendiendo la respuesta de Vji .
Procedimiento paso a paso:
Copie y pegue este comando y presione enter:
chmod +x gradlew
Como sugirió Vji :
./gradlew task-name
NO OLVIDES AGREGAR. (PUNTO) ANTES / gradlew
La documentación oficial está aquí:
Para crear un APK de depuración, abra una línea de comando y navegue hasta la raíz del directorio de su proyecto. Para iniciar una compilación de depuración, invoque la assembleDebug
tarea:
gradlew assembleDebug
Esto crea un APK nombrado module_name-debug.apk
en project_name/module_name/build/outputs/apk/
.
enter code here
Crear archivo de secuencia de comandos con el siguiente comando gradle y adb, Ejecutar archivo de secuencia de comandos
./gradlew clean
./gradlew assembleDebug ./gradlew installDebug
adb shell am start -n applicationID / ruta completa de la actividad del iniciador
tenga en cuenta que también puede hacer esto dentro de Android Studio haciendo clic en la ventana de gradle y luego en el botón 'elefante'. Esto abrirá una nueva ventana llamada "ejecutar cualquier cosa" (también se puede encontrar buscando ese nombre en 'buscar en todas partes') donde puede escribir manualmente cualquier comando de gradle que desee. No es una línea de comando "bastante", pero a menudo proporciona más de lo que necesito que la línea de comandos de Windows.
Esto le permite dar parámetros opcionales para tareas de gradle, etc.