unity tutorial studio minifyenabled android proguard obfuscation

android - studio - proguard tutorial



Android-¿Cómo comprobar si la ocultación de Proguard ha funcionado? (3)

He ofuscado mi apk, pero el tamaño del archivo solo se ha reducido de 12MB a 10.5MB.

La razón por la que es solo una reducción relativamente pequeña puede deberse a que mi aplicación utiliza un par de bibliotecas grandes, pero ¿hay alguna manera de verificar el nivel de ofuscación que se ha realizado?

Por si acaso, este es mi archivo proguard-project.txt ...

# To enable ProGuard in your project, edit project.properties # to define the proguard.config property as described in that file. # # Add project specific ProGuard rules here. # By default, the flags in this file are appended to flags specified # in ${sdk.dir}/tools/proguard/proguard-android.txt # You can edit the include path and order by changing the ProGuard # include property in project.properties. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html # Add any project specific keep options here: # If your project uses WebView with JS, uncomment the following # and specify the fully qualified class name to the JavaScript interface # class: #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; #} -dontwarn twitter4j.**

... y las bibliotecas que estoy usando son android-support-v4.jar , acra-4.5.0.jar y twitter4j-core-4.0.2.jar .


¿De alguna manera puedo verificar el nivel de ofuscación que se ha realizado?

Es posible que pueda utilizar el indicador -optimizationpasses N

Especifica el número de pases de optimización a realizar. Por defecto, se realiza una sola pasada. Pases múltiples pueden dar lugar a nuevas mejoras. Si no se encuentran mejoras después de una pasada de optimización, la optimización finaliza. Solo aplicable al optimizar.


Aquí es probablemente una forma más visual para comprobar. En la versión más reciente de Android Studio, viene con el Analizador de APK que le permite al usuario explorar qué hay en el archivo APK y es útil verificar si su clase ha sido ofuscada.

La imagen de abajo muestra que tanto el paquete como el nombre del método han sido ocultados


En el directorio de su proyecto, encontrará una carpeta Proguard , en la que verá cuatro archivos de texto:

dump.txt

Describe la estructura interna de todos los archivos de clase en el archivo .apk

mapping.txt

Enumera la asignación entre los nombres de clase, método y campo originales y ofuscados. Este archivo es importante cuando recibe un informe de error de una versión de lanzamiento, porque traduce el seguimiento de la pila confusa a los nombres de miembros, métodos y clases originales. Consulte Decodificación de trazas de pila ofuscadas para obtener más información.

semillas.txt

Enumera las clases y los miembros que no están ofuscados.

use.txt

Lista el código que fue despojado de la .apk

Fuente: Proguard

¡Espero que esto ayude!