我将我的模型类重写为Kotlin
,其必须为Parcelable
并在AIDL
中使用:
@Parcelize
data class MyCustomObject(val value1: String, val value2: String) : Parcelable
在编译过程中,它崩溃并出现错误:
错误:不兼容的类型:对象无法转换为MyCustomObject
并在生成的代码中指向此行:
if ((0!=_reply.readInt())) {
_result = com.mypackagename.MyCustomObject.CREATOR.createFromParcel(_reply);
}
我将此注释用于其他目的并且没关系,仅在AIDL中我发现到目前为止不匹配。
任何想法有什么不对?
编辑:5天后没有任何评论,我创建了a ticket for this issue。
答案 0 :(得分:1)
这是Kotlin中的错误,因此我将此问题重定向到JetBrains。 您可以在这里跟踪它:KT-25807。
之所以会这样,是因为createFromParcel()
不会返回类T
,而是返回Object
。
更新来源后,我将更新答案。