2016-02-26 2 views
14

Ich habe ein Upgrade auf Android Studio 2.0 Beta 5 durchgeführt. Ich verwende die Gradle-Tools 2.0.0-beta5. Auf der Android Entwickler Blogspot-Website gibt es ein Video zu erklären, wie die neuen Shrinker zu verwenden, für die debug (bei 3:14)Wie neue Android 2.0 Shrinker und set usageProguard false verwenden?

https://www.youtube.com/watch?list=PLWz5rJ2EKKc_w6fodMGrA1_tsI3pqPbqa&v=xxx3Fn7EowU

Ich versuche, baut mein Projekt mit dem Debug buildType zu bauen, wie erklärt im Video:

debug { 
     minifyEnabled true 
     useProguard false 
    } 

ich bin ein paar Warnungen bekommen und diese dann diesen Fehler, wenn Gebäude:

Error:Execution failed for task 'app:transformClassesWithNewClassShrinkerForMyAppNameGoesHereDebug'. 
Warnings found during shrinking, please use -dontwarn or -ignorewarnings to suppress them. 

Mit Proguard, möchte ich hinzufügen, das entsprechende -dontwarn, das in der progard Projektdatei notwendig ist. Gibt es irgendwo eine Shrinker-Projektdatei, die ich -dontwarn-Anweisungen hinzufügen kann?

Antwort

4

Ich habe einige documentation auf diesem gefunden. Stellt sich heraus, es verwendet die gleichen Konfigurationsdateien wie Proguard. Hier ist der relevante Teil aus dem Dokument:

Der eingebaute Shrinker kann nur toten Code entfernen, er nicht verschleiern oder optimieren. Es kann mit den gleichen Dateien wie ProGuard konfiguriert werden, ignoriert jedoch alle Flags, die sich auf die Verschleierung oder Optimierung beziehen. Im Gegensatz zu ProGuard unterstützen wir die Verwendung des integrierten Shrinkers zusammen mit Instant Run.

Auch hier ist eine Beispielkonfiguration als Referenz:

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

kompiliert und installiert APK. Vielen Dank! Leider gibt es bereits ein Problem mit meiner Proguard Konfiguration. Jackson wirft einen Fehler "kein passender Konstruktor gefunden". Aber zumindest baut es jetzt. –

+2

Ich habe einige Beiträge zu SO bezüglich der Jackson-Ausgabe gesehen. Zumindest hast du es weiter gemacht als ich! Ich war aufgeregt zu sehen, dass das Hinzufügen der -dontwarn-Flags mich an dem Schritt "transformClassesWithNewClassShrinkerForDebug" vorbeigeführt hat. Das führte jedoch zu einem 64K-Methodenfehler, der seltsam ist, da das Projekt mit den gleichen Proguard-Regeln erstellt, wenn Proguard verwendet wird. –