为 Android 开发时,Kotlin 中 serialVersionUID 的必要性

necessity of serialVersionUID in Kotlin when developing for Android

我在内部讨论了使用 Kotlin 编码时对 serialVersionUID 的要求,特别是 Android 平台。在 Java 中,我们总是添加它,因为 Android Studio 使它变得非常简单。但是,Kotlin 没有任何帮助。这让我们质疑 Kotlin 中对 serialVersionUID 的要求。

你对此有何看法?

我很想听听你的意见。

serialVersionUID 仅用于 Java 序列化 (java.io.Serializable)。大多数 Android 应用程序使用 Android 特定的序列化 (Parcelable),因为它更高效。如果您的应用程序不使用 Java 序列化,则在 类 中包含 serialVersionUID 没有任何好处,无论您使用的是 Java 还是 Kotlin。

如果你坚持使用Serializableclass,这是必须的,这是为了防止属性变化导致反序列化失败的问题。现在您可以使用 Android Studio 中的插件自动生成默认的 Serial Version UID,例如 Java。插件地址在这里:Generateserialversionuid.