【发布时间】:2022-01-16 20:28:26
【问题描述】:
真的,我不确定是否可以解释问题
1-我需要从 realtime_firebase 获取帖子 2-每个帖子都有一个 user_id
然后我需要通过 userId 从 Storage_firebase 获取用户图像
问题是图像返回 null
代码
fun getPosts(liveData: MutableLiveData<List<Post>>) {
val databaseRef = firebaseDatabase.getReference("Posts")
var posts: ArrayList<Post> = ArrayList()
databaseRef.addValueEventListener(object : ValueEventListener {
override fun onDataChange(snapshot: DataSnapshot) {
posts.clear()
for (snapshot in snapshot.children) {
var post = snapshot.getValue(Post::class.java)
post?.image = getUserImage(post?.userId!!)
posts.add(post!!)
}
liveData.value = posts
}
override fun onCancelled(error: DatabaseError) {
}
})
}
private fun getUserImage(user_id: String): String? {
var imageUri = ""
firebaseStorage.reference.child("users").child("profile")
.child(user_id).downloadUrl.addOnSuccessListener {
//problem is not access to this methode
imageUri = it.toString()
}
return imageUri
}
【问题讨论】:
-
所以你说
firebaseStorage对象为空?你初始化了吗?如果是,请告诉我们你是在哪里做的。 -
在这种情况下,firebaseStorage 不为空,对吧?这是关于
imageUri为空,对吗? -
我正在使用匕首刀柄进行初始化 提供单例乐趣 getStorage(): FirebaseStorage = FirebaseStorage.getInstance() 并在上传时运行 图片问题无法访问 addOnSuccessListener
-
yes firebaseStorage is Not null put 问题无法访问 addOnSuccessListener
标签: android firebase kotlin firebase-realtime-database firebase-storage