我使用了ButterKnife
,在我的发布版本中,它始终会在与NullPointerException
相关联的任何视图上抛出@Bind
。
我已提出推荐设置:
我对黄油刀使用了以下设置:
第一次互动:
-keep class butterknife.** { *; }
-dontwarn butterknife.internal.**
-keep class **$$ViewBinder { *; }
-keepclasseswithmembernames class * {
@butterknife.* <fields>;
}
-keepclasseswithmembernames class * {
@butterknife.* <methods>;
}
第二次迭代:
# Butterknife
-dontwarn butterknife.internal.**
-keep class **$$ViewInjector { *; }
-keepnames class * { @butterknife.InjectView *;}
亏本,我希望我的代码使用minifyEnabled
进行模糊处理,但似乎无法使用ButterKnife
。
任何时候我关闭minifyEnabled
它都可以。
其他人有运气吗?
答案 0 :(得分:0)
使用最新版的butterknife
http://jakewharton.github.io/butterknife/
编译'com.jakewharton:butterknife:7.0.1'
正如 Jakewharton
所述请务必在build.gradle中禁止此lint警告。
lintOptions {
disable 'InvalidPackage'
}
某些配置可能还需要其他排除。
packagingOptions {
exclude 'META-INF/services/javax.annotation.processing.Processor'
}
然后尝试我希望它会起作用。