update studio para flavors descargar configurar android gradle android-studio release android-gradle

para - install gradle android studio



¿Cómo configurar gradle y android studio para hacer la compilación de lanzamiento? (4)

Quiero construir aplicaciones para Android y comenzar a firmarlas. Para eso necesito tener la versión de lanzamiento de apk. La documentación de Google sugiere solo Eclipse y maneras de tener compilaciones de lanzamiento: http://developer.android.com/tools/publishing/app-signing.html#releasecompile

Sin embargo, no puedo encontrar la forma de forzar la versión de lanzamiento de compilación de apk. build.gradle tampoco da ninguna build.gradle . gradlew tasks sugieren que no hay una configuración de versión de instalación, pero existe una versión de desinstalación:

Install tasks ------------- installDebug - Installs the Debug build installTest - Installs the Test build for the Debug build uninstallAll - Uninstall all applications. uninstallDebug - Uninstalls the Debug build uninstallRelease - Uninstalls the Release build uninstallTest - Uninstalls the Test build for the Debug build

Mi build.gradle :

buildscript { repositories { mavenCentral() } dependencies { classpath ''com.android.tools.build:gradle:0.5.+'' } } apply plugin: ''android'' repositories { mavenCentral() } dependencies { compile ''com.android.support:support-v4:13.0.+'' compile files(''libs/android-support-v4.jar'') compile project(":libraries:ActionBarSherlock") compile project(":libraries:CollabsibleSearchMenu") } android { compileSdkVersion 18 buildToolsVersion "18.0.1" defaultConfig { minSdkVersion 8 targetSdkVersion 16 } }

Lo que me estoy perdiendo?


  1. abrir Build Variants
  2. establecer la debug para release
  3. shift+f10 ¡corre!

luego, Android Studio ejecutará la tarea assembleRelease e instalará xx-release.apk en su dispositivo.


No es necesario actualizar Gradle para hacer la aplicación de lanzamiento en el estudio de Android. Si fueras eclipse de usuario, será tan fácil para ti. Si eres nuevo, entonces sigue los pasos

1: vaya a "Crear" en la sección de la barra de herramientas. 2: elige la opción "Generar APK firmado ...".

3: llene el formulario abierto y vaya al siguiente 4: si ya tiene .keystore o .jks entonces elija ese archivo, ingrese su contraseña y nombre de alias y la contraseña respectiva. 5: O no tiene el archivo .keystore o .jks, luego haga clic en el botón Crear nuevo ... como se muestra en la foto 1 y luego complete el formulario.

El proceso anterior fue para crear manualmente. Si quieres que Android Studio firme automáticamente tu aplicación

En Android Studio, puede configurar su proyecto para que firme su APK de lanzamiento automáticamente durante el proceso de compilación:

En el navegador del proyecto, haga clic con el botón derecho en su aplicación y seleccione Abrir configuración del módulo. En la ventana Estructura del proyecto, seleccione el módulo de su aplicación en Módulos. Haga clic en la pestaña Firma. Seleccione su archivo de almacén de claves, ingrese un nombre para esta configuración de firma (ya que puede crear más de uno) e ingrese la información requerida. Figura 4. Cree una configuración de firma en Android Studio.

Haga clic en la pestaña Tipos de compilación. Seleccione la versión de lanzamiento. En Configuración de firma, seleccione la configuración de firma que acaba de crear. Figura 5. Seleccione una configuración de firma en Android Studio.

4: Lo más importante que hace debuggable = false en gradle.

buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(''proguard- android.txt''), ''proguard-rules.txt'' debuggable false jniDebuggable false renderscriptDebuggable false zipAlignEnabled true } }

visita para obtener más información en developer.android.com


Para activar la tarea installRelease , simplemente necesita un signingConfig . Eso es todo.

De http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Android-tasks :

Finalmente, el complemento crea tareas de instalación / desinstalación para todos los tipos de compilación (depuración, versión, prueba), siempre que se puedan instalar (lo que requiere la firma).

Esto es lo que quieres:

Install tasks ------------- installDebug - Installs the Debug build installDebugTest - Installs the Test build for the Debug build installRelease - Installs the Release build uninstallAll - Uninstall all applications. uninstallDebug - Uninstalls the Debug build uninstallDebugTest - Uninstalls the Test build for the Debug build uninstallRelease - Uninstalls the Release build <--- release

Aquí es cómo obtener la tarea installRelease :

Ejemplo build.gradle :

buildscript { repositories { jcenter() } dependencies { classpath ''com.android.tools.build:gradle:1.2.3'' } } apply plugin: ''com.android.application'' android { compileSdkVersion 22 buildToolsVersion ''22.0.1'' defaultConfig { applicationId ''demo'' minSdkVersion 15 targetSdkVersion 22 versionCode 1 versionName ''1.0'' } signingConfigs { release { storeFile <file> storePassword <password> keyAlias <alias> keyPassword <password> } } buildTypes { release { signingConfig signingConfigs.release } } }


en la última versión de android studio, puedes hacer lo siguiente:

./gradlew assembleRelease

o aR para abreviar. Esto producirá una versión apk sin firmar. Crear un apk firmado se puede hacer de manera similar o puede usar Build -> Generar Apk firmado en Android Studio.

Vea los documentos aquí

Aquí está mi build.gradle para referencia:

buildscript { repositories { mavenCentral() } dependencies { classpath ''com.android.tools.build:gradle:0.5.+'' } } apply plugin: ''android'' dependencies { compile fileTree(dir: ''libs'', include: ''*.jar'') } android { compileSdkVersion 17 buildToolsVersion "17.0.0" sourceSets { main { manifest.srcFile ''AndroidManifest.xml'' java.srcDirs = [''src''] resources.srcDirs = [''src''] aidl.srcDirs = [''src''] renderscript.srcDirs = [''src''] res.srcDirs = [''res''] assets.srcDirs = [''assets''] } // Move the tests to tests/java, tests/res, etc... instrumentTest.setRoot(''tests'') // Move the build types to build-types/<type> // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ... // This moves them out of them default location under src/<type>/... which would // conflict with src/ being used by the main source set. // Adding new build types or product flavors should be accompanied // by a similar customization. debug.setRoot(''build-types/debug'') release.setRoot(''build-types/release'') } buildTypes { release { } }