Enorme diferencia entre la liberación APK – firmado tamaño APK
Encontré dos formas posibles de generar una versión APK
-
Definición de Flavors & Signing del producto Config como abajo en el archivo build.gradle del módulo y luego haciendo clic en el botón Run (betaRelease Config)
- Retardo de propagación al cambiar el precio y la descripción del producto en la aplicación en la consola de Google Play para desarrolladores
- Cómo obtener la clasificación de la aplicación de Google PlayStore
- Servicios de Google Play 7.5.0 AnalyticsService NPE onStartCommand
- Android Market: ¿Cómo especificar las nuevas calificaciones de contenido requeridas?
- Cómo pasar los parámetros de campaña de GooglePlay mediante Intent de Android Chrome
android { signingConfigs { my_alias { keyAlias 'my_alias' keyPassword '*******' storeFile file('*******') storePassword '******' } } compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { minSdkVersion 16 targetSdkVersion 22 versionCode 9 versionName "0.2" resConfigs "en","hi","te" multiDexEnabled true } buildTypes { release { minifyEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.my_alias } debug { minifyEnabled false } } productFlavors { alpha { applicationId = "***************" resValue 'string', 'app_name', '**********' resValue 'string', 'instabug_app_id','*******************' manifestPlaceholders = [onesignal_app_id : "*******************", onesignal_google_project_number: "************"] } beta { applicationId = "***************" resValue 'string', 'app_name', '**********' resValue 'string', 'instabug_app_id','*******************' manifestPlaceholders = [onesignal_app_id : "*******************", onesignal_google_project_number: "************"] } } aaptOptions { additionalParameters "--no-version-vectors" } }
-
Uso de la opción Generar firmado APK del menú Generar en Android Studio
Hay una gran diferencia aquí con el primer APK con 14,5 MB y el segundo con 22,5 MB. Usando el analizador del APK pude ver que el segundo está duplicando los drawables en la carpeta res como se muestra abajo. El lanzamiento más pequeño APK (14.5 MB uno) está funcionando bien en todo tipo de dispositivos.
-
¿Por qué necesito el más grande? ¿Puedo cargar el APK de liberación normal en la tienda de juegos?
-
¿Hay alguna configuración para construir evitando los duplicables duplicados?
- ¿Es posible con la suscripción mensual de compra en la aplicación de Android?
- Mostrando precios específicos de dispositivos para los productos que utilizan Googles IAB
- Ciclo de vida de la aplicación Android cuando la aplicación está siendo actualizada por Play Store
- ¿Hay algún generador "Feature Graphic" para Google Play?
- Abrir aplicación en Google Play desde un enlace de redireccionamiento
- La aplicación de Android A quiere realizar el seguimiento de los datos de referencia de Google Play para la instalación de la aplicación Android B
- Clave de licencia Android
- ¿Qué significa este mensaje de error de publicación de Google Play APK?
Trataré de responder a esta pregunta, basada en mis observaciones.
1.
¿Por qué necesito el más grande? ¿Puedo cargar el APK de liberación normal en la tienda de juegos?
Cuando libera apk haciendo clic en el botón "Ejecutar", está apuntando a dispositivo específico (emulador o dispositivo USB) y está generando recursos sólo para este destino. Ése es porqué usted tiene archivo .apk más pequeño.
Si desea implementar y orientar a toda la densidad de dispositivos, debe utilizar la opción "Generar firmado APK" para proporcionar recursos (por ejemplo, imágenes) a todos los dispositivos.
El lanzamiento más pequeño APK (14.5 MB uno) está funcionando bien en todo tipo de dispositivos.
Creo que porque las imágenes se escalan para caber en la pantalla. Pero estás perdiendo calidad en las imágenes de esta manera.
2.
¿Hay alguna configuración para construir evitando los duplicables duplicados?
En la Instrucción de Provisión de Recursos se escribe que:
La dirección de diseño de su aplicación. Ldrtl significa "disposición-dirección-derecha-izquierda". Ldltr significa "layout-direction-left-to-right" y es el valor implícito por defecto.
Todo esto significa que usted no tiene duplicados drawables pero ahora están en directorios adecuados.
- ¿Cómo instalar SunJCE en Android?
- Cómo depurar cuál es el problema en webview mientras se carga URL del sitio web en android