Jika anda belum tahu apa itu ButterKnife, anda bisa membaca di sini , demikian juga dengan Otto , anda juga bisa membacanya di sini. Tulisan saya ini bermula ketika saya ingin meng-generate signed APK dimana aplikasi saya menggunakan ke dua library tersebut. Ketika saya saya mencoba untuk mem-build, saya mendapatkan warning sebagai berikut (klik pada gambar untuk memperbesar) :
dari baris pertama kita bisa melihat bahwa reference class annotation tidak ditemukan. Hal ini dikarenakan annotated methods dihapus oleh proguard. Untuk menghilangkan warning ini , anda bisa menambahkan beberapa konfigurasi pada proguard.
Berikut contoh konfigurasi yang bisa anda pasang pada proguard:
-keep class butterknife.** { *; } -dontwarn butterknife.internal.** -keep class **$$ViewBinder { *; } -keep class **$$ViewInjector { *; } -keepclasseswithmembernames class * { @butterknife.*; } -keepclasseswithmembernames class * { @butterknife.* ; } -keepattributes *Annotation* -keepclassmembers class ** { @com.squareup.otto.Subscribe public *; @com.squareup.otto.Produce public *; }
Demikian tips dari saya , semoga bermanfaat :D
No comments:
Post a Comment