Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Google Play APK y Android Studio APK (depuración USB) se comportan de forma diferente

He publicado una pregunta anteriormente: 'No args constructor para la clase no existe', pero lo hace y recibió una respuesta que funcionó cuando lo probé usando el modo de depuración USB en mi teléfono a través de Android Studio. Sin embargo, cuando empujé la aplicación a Google Play, ésta deja de funcionar y provoca el mismo error que describí en esa pregunta. Repetí la prueba hoy y sucede lo mismo.

Para aclarar, estoy probando el:

  • La importación de jar librerías en android-studio
  • ¿Cómo puedo ejecutar el emulador de Android para Intel x86 Atom sin aceleración de hardware en Windows 8 para API 21 y 19?
  • Google Play Services hace que el apk sea demasiado grande
  • Cómo eliminar el icono de correo electrónico de la emulación de Android Studio
  • La ejecución falló para la tarea ': app: processDebugManifest' después de Android Stdio 2.2 udpate
  • Cómo buscar el método en un archivo en Android Studio
    • Exacta el mismo código
    • En el mismo teléfono
    • Ejecutar la misma versión de Android
    • Utilizar exactamente la misma imagen

    ¿Hay alguna razón por la que el APK de Google Play se comportaría de manera diferente al Android Studio APK? ¿O me estoy perdiendo algo?

  • Error al inicializar GoogleService
  • Permiso de Firebase negado Error
  • Encontrado com.google.android.gms: play-services-gcm: 8.3.0, pero se necesita la versión 8.1.0
  • ¿Cuál es la diferencia entre Acitvity_Main.xml y Fragment_main.xml en Android Studio
  • ¿Cómo debo calcular el azimut, el tono, la orientación cuando mi dispositivo Android no es plano?
  • ¿Cómo deshace el modo flotante para la ventana logcat en Android Studio
  • 3 Solutions collect form web for “Google Play APK y Android Studio APK (depuración USB) se comportan de forma diferente”

    Dependiendo de la configuración de build.gradle , las versiones de release usualmente ejecutan ProGuard en su código. debug versiones de debug usualmente no ejecutan estas herramientas en el código.

    Así que lo que podría haber sucedido es que ProGuard corrió sobre su código, encontró que MwVolleyApi$Page no se utiliza en ninguna parte, y lo eliminó.

    Para probar esta teoría, en su build.gradle apague minifyEnabled :

     release { minifyEnabled false ... } 

    A continuación, crear un release-apk, y probarlo.

    BTW, siempre debes probar los apks de liberación en tu dispositivo antes de subirlos a Google Play, puedes instalarlos a través de adb install o copiarlos en la tarjeta sd e instalarlos desde la aplicación Downloads en tu teléfono.

    Si esto soluciona el problema, puede agregar reglas a su archivo proguard.cfg para guardar la clase Page de su eliminación, algo así como:

     -keep class fr.free.nrw.commons.upload.MwVolleyApi$Page {*;} 

    A continuación, puede volver minifyEnabled a true y volver a probar

    Intente crear la compilación de depuración con proguard y ver si el problema se replica. En su build.gradle haga esto:

     buildTypes { all{ // Place all proguard files proguardFile 'proguard/proguard-rules.pro' proguardFile getDefaultProguardFile('proguard-android.txt') } } 

    Creo que el apk que está construyendo desde su Android Studio es la versión de depuración, que es el usuario para la depuración durante el desarrollo. El apk que se publica en Google Play Store es la versión de lanzamiento de tu aplicación.

    También puede crear una versión de Android Studio y ver que será exactamente la misma versión que se encuentra en la tienda de reproducción.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.