2014-03-06 6 views

Antwort

31

Auch wenn Sie nicht eine tatsächliche Frage habe posten, ich nehme an, Sie möchten, dass gegangen Warnung.

Fügen Sie die folgenden Zeilen zu Ihrer ProGuard Konfiguration:

-dontwarn butterknife.internal.** 
-keep class **$$ViewInjector { *; } 
-keepnames class * { @butterknife.InjectView *;} 

source

+0

Diese Lösungen funktioniert dank !! – mithil1501

+2

Wenn wir die Buttermesser-Klassen behalten, warum brauchen wir die -dontwarn-Linie? Warum werden immer noch Warnungen angezeigt? – Vas

+0

Beachten Sie, dass "-keepnames class *" bedeutet, dass KEINE Ihrer Klassennamen verschleiert werden. – aaronmarino

5

Wenn jemand ein Problem mit Proguard und Buttermesser zugewandt ist, verwenden Sie die bei gegebenen folgenden http://jakewharton.github.io/butterknife/index.html#proguard

-keep class butterknife.** { *; } 
-dontwarn butterknife.internal.** 
-keep class **$$ViewBinder { *; } 

-keepclasseswithmembernames class * { 
    @butterknife.* <fields>; 
} 

-keepclasseswithmembernames class * { 
    @butterknife.* <methods>; 
} 
+1

Diese Anleitung vom ButterKnife funktioniert, danke. Jetzt Zeit, um den Rest von Fehlern mit Retrofit etc zu begegnen: P – voghDev

+0

Fügen Sie diese zu Ihrer Datei proguard-project.txt im Abschnitt # Nicht warnen –

+2

Der Link (http://jakewharton.github.io/butterknife/index.html#) Proguard) scheint kaputt zu sein und die Hauptseite (http://jakewharton.github.io/butterknife/) scheint Proguard nicht zu erwähnen; Sind diese Regeln noch notwendig? –