こんにちは - 私は、このエラーを取得中にエラーが以下の通りです:FirebaseデータベースにInvocationTargetException
`
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.google.android.gms.internal.zzaix$zza.zzaE(Unknown Source)
at com.google.android.gms.internal.zzaix.zzaw(Unknown Source)
at com.google.android.gms.internal.zzaix.zzav(Unknown Source)
at com.google.firebase.database.DatabaseReference.zza(Unknown Source)
at com.google.firebase.database.DatabaseReference.setValue(Unknown Source)
私が追加しようとしたときにエラーが開始Udacityから、実施例により案内FirebaseからServerValue.TIMESTAMP、here's私のPOJO:
public class Messages {
private String content, author, authorPhoto;
private int type;
protected HashMap<String, Object> timeStampCreated;
private Uri uri;
public Messages() {//Empty default constructor, necessary for FireBase to be able to deserialize blog posts
}
public void setContent(String content) {
this.content = content;
}
public String getContent() {
return content;
}
public String getAuthor() {
return author;
}
public String getAuthorPhoto() {
return authorPhoto;
}
public int getType() {
return type;
}
@JsonIgnore
public long getTimeStamp() {
return (long)timeStampCreated.get("timeStamp");
}
public void setTimeStamp() {
HashMap<String, Object> hmDate = new HashMap<>();
hmDate.put("timeStamp", ServerValue.TIMESTAMP);
this.timeStampCreated = hmDate;
}
public void setAuthor(String author) {
this.author = author;
}
public void setAuthorPhoto(String authorPhoto) {
this.authorPhoto = authorPhoto;
}
public void setType(int type) {
this.type = type;
}
public Uri getUri() {
return uri;
}
public void setUri(Uri uri) {
this.uri = uri;
}
}
と - 私はこのメッセージを追加しようとFirebase Dに反対の方法をhere's値を設定すると、正確なエラーが表示されます。
public void sendMessage(String content, final int type) {
Messages message = new Messages();
message.setContent(content);
message.setTimeStamp();
message.setAuthor(email);
message.setAuthorPhoto(picURL);
message.setType(type);
FBRefMessages.push().setValue(message, new DatabaseReference.CompletionListener() {
@Override
public void onComplete(DatabaseError error, DatabaseReference databaseReference) {
if (error == null) {
Log.d("Adapter", "onChildAdded: The adapter is: " + mAdapter);
updateNodes();
} else {//There was an error
}
}
});
}
助けてください!
FBRefMessages.push()。setValue(message、new DatabaseReference.CompletionListener())理由はわかりませんが、参照がこの値に設定されていますが、この行にブレークポイントを追加しました。 :そのようなインスタンスフィールドはありません: 'FBRefMessages' – Andrea
'JsonIgnore'で' getTimeStamp'を削除しようとしましたが、動作しましたが、 'ServerValue.TIMESTAMP'を追加する必要があります。どうすれば追加できますか? – Andrea