0

タイムスタンプの DataSnapshot.getValue() で Android チャットがクラッシュする

POJO にタイムスタンプ プロパティを追加しようとしています。上記の解決策は、アプリケーションによって使用される実際のデータ メンバーを無視するように jackson に指示します。AutoValue を使用していますが、クラスに注釈を付けて動作させる方法がわかりません。

@AutoValue
public abstract class Pojo {

    @JsonProperty("id") public abstract String id();
    @JsonProperty("name") public abstract String name();
    @JsonProperty("date") public abstract long date();

    @JsonCreator public static Pojo create(String id, String name, long date) {
        return new AutoValue_Pojo(id, name, date);
    }
}

カスタムシリアライザーを使用してみました:

public class TimeStampSerializer extends JsonSerializer<Long> {
    @Override public void serialize(Long value, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException {
        jgen.writeString(ServerValue.TIMESTAMP.toString());
    }
}

しかし、タイムスタンプを生成する代わりに文字列date: "{.sv=timestamp}"をfirebaseに書き込んだ

4

1 に答える 1