gpt4 book ai didi

android - 如何为 ButterKnife 8 配置 ProGuard 设置?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:56:31 25 4
gpt4 key购买 nike

我在我的 Android 应用程序中运行 ButterKnife 8.5.1 版。如果我尝试为 ButterKnife 进行 ProGuard 设置,我的发布版本仍然会崩溃。有一个 issue on the official ButterKnife Github page它告诉您进行以下设置:

-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 *;}

这些都不适用于我的配置。访问 ButterKnife 绑定(bind)的 View 时,我仍然遇到崩溃。那么,您需要为 ButterKnife 8 进行哪些新设置吗?

最佳答案

在 ButterKnife 8 中,自动生成的子类被称为不同的。您可以通过这种方式处理版本 7 和 8 的 ProGuard 设置:

###---------------Begin: proguard configuration for ButterKnife  ----------
# For Butterknife:
-keep class butterknife.** { *; }
-dontwarn butterknife.internal.**

# Version 7
-keep class **$$ViewBinder { *; }
# Version 8
-keep class **_ViewBinding { *; }

-keepclasseswithmembernames class * { @butterknife.* <fields>; }
-keepclasseswithmembernames class * { @butterknife.* <methods>; }
###---------------End: proguard configuration for ButterKnife ----------

虽然我使用的是@OnClick 方法,但我什至不需要最后一行。这些设置非常适合我。试试吧!

关于android - 如何为 ButterKnife 8 配置 ProGuard 设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43001611/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com