我有一个非常奇怪的问题。此代码几天前仍在工作,但现在它正在使我的应用程序崩溃。我正在尝试循环访问节点子节点。private void getInfo(){ FirebaseDatabase.getInstance().getReference() .child("ForumResponses").child(forumID).addListenerForSingleValueEvent(new ValueEventListener() { @Override public void onDataChange(@NonNull DataSnapshot dataSnapshot) { for(DataSnapshot snap : dataSnapshot.getChildren()) { ForumResponses forumResponses = snap.getValue(ForumResponses.class); } } @Override public void onCancelled(@NonNull DatabaseError databaseError) { } });}如果我删除下面的代码行,应用程序不会崩溃。这是为什么呢?ForumResponses forumResponses = snap.getValue(ForumResponses.class);下面是错误日志 com.google.firebase.database.DatabaseException: Failed to convert a value of type java.util.HashMap to int at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.convertInteger(com.google.firebase:firebase-database@@16.1.0:351) at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.deserializeToPrimitive(com.google.firebase:firebase-database@@16.1.0:272) at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.deserializeToClass(com.google.firebase:firebase-database@@16.1.0:197) at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.deserializeToType(com.google.firebase:firebase-database@@16.1.0:178) at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.access$100(com.google.firebase:firebase-database@@16.1.0:47)
1 回答
ITMISS
TA贡献1871条经验 获得超8个赞
您会收到以下错误:
数据库异常: 无法将 java.util.HashMap 类型的值转换为整数
因为类中的字段类型是 和 数据库中的字段,因为该字段实际上是一个对象。要解决此问题,请将数据库中的字段转换为 ,或将类中字段的类型更改为 .liked
ForumResponses
int
int
ForumResponses
Map<String, Object>
添加回答
举报
0/150
提交
取消