firebase - 我得到了这个错误并且无法解决它:反序列化时期望一个列表,但得到一个类 java.lang.String;
问题描述
我知道那是星期天,但我遇到了这个问题,我不知道如何解决它。ps:stackoverflow 中的其他问题是在 java 中,我使用的是 kotlin,并且是关于地图错误,而不是列表。
我的班级用户
@Parcelize
class User (val primeiroLogin:Boolean, val tutorialComplete:Boolean, val
username:String, val uid:String, val viewed:ArrayList<String>) : Parcelable {
constructor() : this(true,false,"","", ArrayList())
}
我得到错误的大部分活动
var viewed = ArrayList<String>()
private fun selectCategories(){
val ref = FirebaseDatabase.getInstance().getReference("/users")
ref.addListenerForSingleValueEvent(object: ValueEventListener{
override fun onCancelled(p0: DatabaseError) {
}
override fun onDataChange(p0: DataSnapshot) {
var cUid = ""
val user = FirebaseAuth.getInstance().currentUser
user?.let {
val uid = user.uid
cUid = uid
}
p0.children.forEach{
val user = it.getValue(User::class.java)
if(user?.uid == cUid){
viewed = user.viewed
}
}
}
})
}
private fun fetchCategories(){
val ref = FirebaseDatabase.getInstance().getReference("/categories")
ref.addListenerForSingleValueEvent(object: ValueEventListener{
override fun onCancelled(p0: DatabaseError) {
}
override fun onDataChange(p0: DataSnapshot) {
val adapter = GroupAdapter<ViewHolder>()
p0.children.forEach{
val category = it.getValue(Category::class.java)
if(category != null){
for (i in 0..viewed.size) {
if(category.real_name != viewed[i]){
adapter.add(categories(category))
}
}
}
}
adapter.setOnItemClickListener { item, view ->
val categories = item as categories
val intent = Intent(view.context, LearningFirstLibras::class.java)
intent.putExtra(CATEGORY_KEY, categories.category)
startActivity(intent)
}
new_words_categories.adapter = adapter
}
})
..... 感谢你们!
解决方案
推荐阅读
- javascript - 允许多次按下按钮
- java - 当没有条件显示的项目时隐藏recyclerview
- android - ViewPager2 里面有水平滚动视图
- c# - 如何使用 localhost 测试 CallBack Api(社交网络 Vk)?
- go - gorm:如何使用切片作为查询目标
- odoo-12 - 如何在超级方法(创建)调用(odoo 12)中传递上下文
- python - Django:试图返回两个日期之间的对象总和,而不是返回所有对象的总和
- javascript - 音频无法在 React 中播放
- laravel - 我无法访问 vue 的消息变量
- python - pandas 中的内存高效过滤