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 gradlewscript que se encuentra en la raíz de su proyecto (o gradlew.baten 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 assembleDebugdesde 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 assemblyDebugy 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 assembleDebugy ./gradlew installDebugcomandos. 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 taskspara ver todas las tareas disponibles para el proyecto actual. No Android Studiose 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.batsi está en Windows
chmod +x ./gradlew puede ser necesarioA partir de este momento, se gradlerefiere a ejecutar Gradle de cualquier forma que haya elegido. Sustituir en consecuencia.
Si ha instalado manualmente el SDK
export ANDROID_HOME=<install location>~/.profilesi no se hace automáticamenteAcepta las licencias: yes | sdkmanager
sdkmanager puede encontrarse en $ANDROID_HOME/tools/binsdkmanager puede tener que ejecutarse como rootIntenta correr gradle
chown -R user:group $ANDROID_HOMEchmod 777 -R $ANDROID_HOMEgradle 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 assembleDebugo assembleRelease: cree solo las versiones de depuración o lanzamientogradle installDebugo installReleasecompilar 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 -hpor más ayudagradlew
(En Windows gradlew.bat)
adb install -r exampleApp.apk
(Esto -rhace que reemplace la copia existente, agregue una -ssi 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 assembleDebugtarea:
gradlew assembleDebug
Esto crea un APK nombrado module_name-debug.apken project_name/module_name/build/outputs/apk/.
enter code hereCrear 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.