SerializedName 注释成员在发布版本中变得模糊 Android
SerializedName annotated member is getting obfuscated in release build Android
在最近的版本创建中,我的一个 class 具有 @SerializedName 成员的 es 被混淆了,这在以前的版本中没有发生。
我的class:
data class Segments(
@SerializedName("list")
val list: List<Segment>
)
也在混淆器中使用-keepattributes *Annotation*
。
谁能帮帮我,这里有什么问题吗?
我花了很多时间弄清楚为什么我的其他 class 成员没有被混淆并且没有出现任何空指针崩溃。
首先使缓存无效并重新启动主要是缓存issue.if不起作用尝试下面的解决方案。
(我的假设是 Proguard/R8 搞砸了 这个)。我知道我可以使用 @Keep 但我不想那样做,因为它是 @SerializedName 注释。后来找到修复,
初始化数据成员
用@Parcelize 注释并实现了 Parcelable,
@Parcelize
data class Segments(
@SerializedName("list")
val segments: List<HomeFSegmentsSegment> = ArrayList()
) : Parcelable
这may/may不是问题的确切解决方案,但确实解决了问题。
在最近的版本创建中,我的一个 class 具有 @SerializedName 成员的 es 被混淆了,这在以前的版本中没有发生。
我的class:
data class Segments(
@SerializedName("list")
val list: List<Segment>
)
也在混淆器中使用-keepattributes *Annotation*
。
谁能帮帮我,这里有什么问题吗?
我花了很多时间弄清楚为什么我的其他 class 成员没有被混淆并且没有出现任何空指针崩溃。
首先使缓存无效并重新启动主要是缓存issue.if不起作用尝试下面的解决方案。
(我的假设是 Proguard/R8 搞砸了 这个)。我知道我可以使用 @Keep 但我不想那样做,因为它是 @SerializedName 注释。后来找到修复,
初始化数据成员
用@Parcelize 注释并实现了 Parcelable,
@Parcelize data class Segments( @SerializedName("list") val segments: List<HomeFSegmentsSegment> = ArrayList() ) : Parcelable
这may/may不是问题的确切解决方案,但确实解决了问题。