2016-05-10 12 views
0

Ich versuche meine App zu testen, die die Grenze von 64K überschritten hat.Progaurd wird nicht verkleinert, wenn debuggable auf true gesetzt ist

Ich habe minify auf, aber es funktioniert nicht, wenn debuggable aktiviert ist. Wenn ich jedoch eine Version mit debugable ausbilde, verkleinert es sich um 2/3!

Fehle ich etwas? Dies ist der relevante Teil meiner Gradle Datei:

buildTypes { 
    release { 
     minifyEnabled true 
     debuggable false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
    debug { 
     minifyEnabled true 
     debuggable true 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 

proguard-rules.pro:

-keep class .R 
-keep class **.R$* { 
    <fields>; 
} 
-keepattributes *Annotation* 
-keepclassmembers class ** { 
    @org.greenrobot.eventbus.Subscribe <methods>; 
} 
-keep enum org.greenrobot.eventbus.ThreadMode { *; } 

-keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent { 
    <init>(java.lang.Throwable); 
} 

-dontwarn com.google.** 
-dontwarn com.squareup.picasso.** 


-dontnote com.google.** 
-dontnote com.squareup.picasso.** 

Antwort

0

Mit proguard aktiviert Code verschleiert wird und das Debuggen wird nicht möglich sein. Deshalb, wenn Sie debuggen und das Flag auf true setzen wollen, wird proguard nicht aktiviert und deshalb sehen Sie nicht die Verkleinerung Ihrer apk.

Überprüfen Sie this post. Es hat eine ähnliche Frage und wird Ihnen helfen, die Bedingungen besser zu verstehen.

+0

Ich schaute tatsächlich auf diesen Beitrag, bevor ich fragte. Ich hatte den Eindruck, dass dies bedeutet, dass sie gemischt werden können. Das Problem ist, dass nach dem Schrumpfen weniger als 29K Methoden zur Verfügung stehen. Die meisten der gefallenen sind von Google. – theblitz

+0

Die andere Sache, die ich bemerkte, ist, dass dies nur passiert, wenn ich direkt auf das Gerät laufe. Wenn ich es baue (mit Build-> Build APK), dann funktioniert die Minify. – theblitz

Verwandte Themen