Generar un APK en modo release

Para generar un APK en modo Release desarrollado con Flutter y el IDE Android Studio, es necesario crear un archivo key.properties y modificar el gradle.

VIDEO Generar apk Release

¿Como generar un APK release en Flutter en Android Studio ?

Contextualizando este post, escribo que se trata de cómo generar un apk en modo release listo para subir a la tienda de aplicaciones Google Play, más no cómo obtener la firma o la llave .jks. dicho esto empecemos.

¿Como generar un APK release en Flutter en Android Studio ?

Para generar un APK en modo Release desarrollado con el sdk de Flutter y el IDE Android Studio. Debemos seguir los siguientes pasos.

  1. Crear un archivo key.properties
  2. Modificar el build.gradle
  3. Tener conectado un dispositivo físico como emulador
  4. Ejecutar el comando en la terminal : flutter build apk

Y listo tenemos un apk firmado listo para subir a Play Store. Algo muy importante es que no deben perder nunca su llave .jks

Veamos el archivo: key.properties

storePassword=llave
keyPassword=llave
keyAlias=llave
storeFile=C:\\keys\\llavestore.jks

Ahora parte del archivo build.gradle

def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
    localPropertiesFile.withReader('UTF-8') { reader ->
        localProperties.load(reader)
    }
}

def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
    throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}

def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
    flutterVersionCode = '1'
}

def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
    flutterVersionName = '1.0'
}

apply plugin: 'com.android.application'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))

android {
    compileSdkVersion 28

    lintOptions {
        disable 'InvalidPackage'
    }

    defaultConfig {
        // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
        applicationId "com.codea.generarapk"
        minSdkVersion 16
        targetSdkVersion 28
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    signingConfigs{
        release{
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile file(keystoreProperties['storeFile'])
            storePassword keystoreProperties['storePassword']
        }
    }

    buildTypes {
        release {
            // TODO: Add your own signing config for the release build.
            // Signing with the debug keys for now, so `flutter run --release` works.
            signingConfig signingConfigs.release
        }
    }
}

flutter {
    source '../..'
}

dependencies {
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

 

No tiene descargable

Comparte el código!...talvez tu amigo lo necesite!

Whatsapp Messenger Facebook Twitter

Visitado 4486 veces | Publicado hace 9 meses

Curso Flutter App Copa América

Mira el temario del curso en el siguiente link

VER EL CURSO

Logo Codea App

Develop your code

Perú, México, Colombia, España, Venezuela, Argentina, Bolivia

You Fb Tik Pin

© Todos los derechos reservados CODEA APP | Cursos de programación avanzados con proyectos reales | 2020 - 2021