Android Gradle build resultante apk contiene clases ofuscadas y no ofuscadas

Al construir mi proyecto androide, he añadido lo siguiente al archivo build.gradle para habilitar proguard:

buildTypes { release { runProguard true proguardFile 'proguard-project.txt' proguardFile '../common/proguard-shared.txt' proguardFile getDefaultProguardFile('proguard-android.txt') } } 

Todo se genera bien, pero cuando desmontar el archivo dex resultante, resulta que tanto los archivos ofuscados y no ofuscados están allí.

Por ejemplo, tanto common.Base64 y common.a existen, el primero es no obfuscated, mientras que el segundo es.

No está seguro de su relación, pero el proyecto en sí tiene una estructura no típica. Esto es un resultado de nosotros tener una base de código androide grande con más de 40 aplicaciones android. Estamos tratando de crear un flujo de generación basado en gradle lado a lado de la creación basada en eclipse existente.

Si todo va bien, tenemos la intención de cambiar la estructura de archivos para ser más gradle nativo, y empezar a usar los sabores y construir-tipos de tener-lejos con muchas de las bibliotecas que creamos para dar cabida a la falta de sabores y tal.

El proyecto E se basa en una cadena de bibliotecas como esta:

E -> D -> C -> B -> A

P. Ej., El proyecto E depende de la biblioteca D que depende de la biblioteca C … hasta llegar a A.

Después de mirar esto, descubrí que esto es un problema si primero construyes sin proguard habilitado y luego lo construyes con él habilitado. Esto se debe al modo incremental de dex.

Puedes hacer una compilación limpia después de habilitar proguard y solucionará esto.

Edit: He indicado anteriormente que puede desactivar el modo incremental en dex, pero resulta que en realidad no ayuda!

  • RestTemplate, Jackson y proguard
  • Cómo excluir archivos R * .class de una compilación proguard
  • Proguard con código de error de devolución Unity3d 1
  • Proguard Printmapping no funciona en Android Studio 2.0.0 (y 2.1.0)
  • Android: Cómo quitar el registro de depuración de SLF4J con ProGuard
  • El tamaño de la pila se vuelve negativo después de la instrucción
  • Problemas al compilar la aplicación de Android en modo de liberación con proguard activado
  • Aplicación de bloqueo de Android después de proguard
  • Kotlin y Proguard
  • Usar Proguard sólo para deshabilitar el registro y para reducir recursos
  • Android - Proguard error duplicado de entrada zip
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.