firebaseデータベースに送信するすべてのメッセージに対してTime Stamp
を保存します。これは正しい方法ですか?Androidでfirebaseデータベースにメッセージのタイムスタンプを送信するにはどうすればいいですか?
私のコードのどこかで、次のものを使用しました。
Message message = new Message(null, mUserName, downloadUrl.toString(),ServerValue.TIMESTAMP);
messagesDatabaseReference.push().setValue(message);
アプリを実行しようとするとこのエラーが発生します。
com.google.firebase.database.DatabaseException: Expected a Map while deserializing, but got a class java.lang.Long
これは私のモデルクラス、Message
次のとおりです。私はあなたがデータベースからtimestamp
を取得しているときに、エラーメッセージを取得していると仮定し
public class Message {
private String text;
private String name;
private String photoUrl;
private Map<String,String> timeStamp;
public Map<String, String> getTimeStamp() {
return timeStamp;
}
public void setTimeStamp(Map<String, String> timeStamp) {
this.timeStamp = timeStamp;
}
public Message(String text, String name, String photoUrl, Map<String,String> timeStamp) {
this.text = text;
this.name = name;
this.photoUrl = photoUrl;
this.timeStamp = timeStamp;
}
// Other getters and setters
}
これを私の 'Message'クラスに入れておくべきですか? – Chip
はい、間違いなく。そのとおりです。 –
私はそれを行い、あなたに戻ってきます!感謝します。 – Chip