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:

  • SDK Ubicación no encontrada Android Studio + Gradle
  • ¿Cómo puedo abrir mis proyectos Eclipse existentes en Android Studio?
  • No se puede encontrar hprof-conv al iniciar Android Device Monitor
  • "No, falta característica: VER" cuando intento ejecutar mi aplicación de smartphone con la aplicación de desgaste?
  • ¿Cómo puedo encontrar todas las cadenas codificadas en mi proyecto en Android Studio
  • Apk en el nuevo 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?

  • Mejor manera de hacer Debug sólo afirmar código
  • No se puede ejecutar proyecto importado
  • AutoCompleteTextView fondo / color de primer plano
  • Retrofit 1.9 con OkHttp 2.2 e interceptores
  • Android: Cómo rotar LinearLayout
  • Limitar (restringir) las instalaciones de la aplicación por cuenta (detectadas por dispositivos únicos) en Android
  • 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.