【发布时间】:2019-10-22 19:41:14
【问题描述】:
我通过 Retrofit 从 API 调用返回的响应对每个对象都有一个动态值。我需要能够在每次调用时编辑 @SerializedName 注释中的值。 这是 JSON 响应:
{ "data": { "/storage/emulated/0/DCIM/Camera/IMG_20190920_110850.jpg": { "id": "4f7e74d1-afa8-4924-a8ab-ea9360400b", "location": "279dbcd7666b/4f7e74d1-afa8-4924-a8ab-ea9360400b.jpg", "bucket": "challenge-submit" } } }
这是我的数据类:
data class UploadLinksResponse(
@SerializedName("data")
val data: UploadData
)
data class UploadData(
@SerializedName("/storage/emulated/0/DCIM/Camera/IMG_20190920_110850.jpg")
val media: MediaLink
)
data class MediaLink(
@SerializedName("id")
val id: String,
@SerializedName("bucket")
val bucket: String,
@SerializedName("location")
val uploadLocation: String
)
如何设置 MediaLink 对象的 SerializedName,每次上传时它都是唯一值?
【问题讨论】: