【发布时间】:2018-11-11 08:48:12
【问题描述】:
我正在尝试使用 Bundle 在应用程序之间传递一个序列化对象,其中一个应用程序中的对象是 Java,而另一个应用程序中的相同对象是 Kotlin。
传递一个对象 -
Bundle bundle = new Bundle();
bundle.putSerializable(Constants.KEY_USER_PROFILE, getUserProfile());
用于获取对象 -
Profile profile = (Profile) bundle.getSerializable(Constants.KEY_USER_PROFILE);
在第二种情况下,profile 类使用 kotlin 语言,而在第一种情况下,它使用 java
我在传递对象时遇到以下异常
java.lang.RuntimeException:无法启动活动 ComponentInfo{MainActivity}:java.lang.RuntimeException:Parcelable 在读取 Serializable 对象时遇到 IOException(名称 = base.model.user.Profile)
引起:java.lang.RuntimeException: Parcelable遇到IOException读取Serializable对象(name = base.model.user.Profile)
Caused by: java.io.InvalidClassException: base.model.user.Profile; local class incompatible: stream classdesc serialVersionUID = 7285398503547917474, local class serialVersionUID = -1011142074531890510
【问题讨论】:
标签: android serialization kotlin