私は改造バージョン2.1を使用しています。JSONを逆ポーズにデシリアライズするには0を指定します。 pojoのフィールドは、jsonの異なる名前で受け取ることができます。フィールドを正しく直列化復元するには、次のように@serializedNameアノテーションを使用しました。
@AutoValue
public abstract class Media implements Parcelable {
@SerializedName(value = "title", alternate = {"name"})
public abstract String title();
// More fields and code
しかし、何らかの理由で、結果のJSONがキー "title"の下にフィールドを持っている場合、Gsonはそれを正しく読み取りますが、フィールドが "name"キーに関連付けられている場合、読み込まれません。
デシリアライズ時にGSONに代替名を認識させるにはどうすればよいですか?
回答:
回答№1は1私はあなたが com.ryanharter.auto.value:auto-value-gson
プラグイン。別のシリアライズされた名前のサポートはありませんでした 追加された バージョン0.4.0まで。更新先 com.ryanharter.auto.value:auto-value-gson:0.4.2
別の名前をデシリアライズすることができます。
回答№2の場合は-1
問題はパーセルに関連しているようだ。 あなたはこれを見てみたいかもしれません パーセル
@AutoValue
@Parcel
public abstract class Media {
@ParcelProperty("title") public abstract String title();
}