解串名單我有包含列表的模型。崩潰從火力地堡
class Group {
List<String> members;
// Other fields
}
我使用databaseRef.setValue(group)
將整個模型插入到Firebase中。現在它被正確插入到firebase中,但是當我嘗試在members
字段中添加任何新值時會出現問題。
我使用membersRef.push().setValue("[email protected]")
在成員添加新的字段列表上的火力點。
當Group
對象最初創建時,Firebase使用「0」,「1」等作爲鍵,但是當我push()時,它創建一個唯一的String作爲鍵。
我創建Java對象返回使用此代碼:
groupReference.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Group group = dataSnapshot.getValue(Group.class);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
現在的問題從火力地堡創建是當Group
類回到它試圖在members
字段轉換的List
,因爲它是從鑰匙啓動0但一些迭代後有一個String
鍵(類似「-KjTzYGRDZN99rBZfPDF」),所以它崩潰試圖將其轉換爲List
。
我的火力地堡對象看起來是這樣的:
Group
|-----members
|----0: "[email protected]"
|-----KjTzYGRDZN99rBZfPDF: "[email protected]"
我很困惑我該如何解決這個問題。我如何告訴firebase使用唯一的密鑰而不是0,1,2等?