firebase.database.DatabaseException: 无法将类型 java.lang.Long 的值转换为字符串
firebase.database.DatabaseException: Failed to convert value of type java.lang.Long to String
[]
firebase.database.DatabaseException: Failed to convert value of type java.lang.Long to String
我正在尝试将此数据添加到 FirebaserecyclerAdapter 并收到此错误
这里是数据库引用
databaseReference = FirebaseDatabase.getInstance().getReference().child("questions");
这就是我使用 RecyclerViewAdapter 的方式
FirebaseRecyclerAdapter<History, HistoryViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<History, HistoryViewHolder>(
History.class, R.layout.history_list_item, HistoryViewHolder.class, databaseReference) {
@Override
protected void populateViewHolder(HistoryViewHolder viewHolder, History model, int position) {
viewHolder.setMyanswer(model.getMyAnswer());
viewHolder.setCorrentAnswer(model.getCorrectAnswer());
viewHolder.setImageUrl(getApplicationContext(), model.getImageUrl());
}
};
recyclerView.setAdapter(firebaseRecyclerAdapter);
你数据库中的两个节点确实有不匹配的数据类型:
myAnswer : "21"
myAnswer : 11
如果您希望它是一个字符串,它应该是:
myAnswer : "21"
myAnswer : "11"
或者,让它们长:
myAnswer : 21
myAnswer : 11
确保在添加数据时注意一致性
valueX = 21.4;
valueY = 23.5;
需要将 Long 更改为 String
String mValuex = String.valueOf(valueX);
String mValuey = String.valueOf(valueY);
myRef.child(username).child("valuex").setValue(mValuex);
myRef.child(username).child("valuey").setValue(mValuey);
[
firebase.database.DatabaseException: Failed to convert value of type java.lang.Long to String
我正在尝试将此数据添加到 FirebaserecyclerAdapter 并收到此错误
这里是数据库引用
databaseReference = FirebaseDatabase.getInstance().getReference().child("questions");
这就是我使用 RecyclerViewAdapter 的方式
FirebaseRecyclerAdapter<History, HistoryViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<History, HistoryViewHolder>(
History.class, R.layout.history_list_item, HistoryViewHolder.class, databaseReference) {
@Override
protected void populateViewHolder(HistoryViewHolder viewHolder, History model, int position) {
viewHolder.setMyanswer(model.getMyAnswer());
viewHolder.setCorrentAnswer(model.getCorrectAnswer());
viewHolder.setImageUrl(getApplicationContext(), model.getImageUrl());
}
};
recyclerView.setAdapter(firebaseRecyclerAdapter);
你数据库中的两个节点确实有不匹配的数据类型:
myAnswer : "21"
myAnswer : 11
如果您希望它是一个字符串,它应该是:
myAnswer : "21"
myAnswer : "11"
或者,让它们长:
myAnswer : 21
myAnswer : 11
确保在添加数据时注意一致性
valueX = 21.4;
valueY = 23.5;
需要将 Long 更改为 String
String mValuex = String.valueOf(valueX);
String mValuey = String.valueOf(valueY);
myRef.child(username).child("valuex").setValue(mValuex);
myRef.child(username).child("valuey").setValue(mValuey);