[英]Get random user from Firebase
我正在開發 kotlin 中的應用程序,用於從 firebase 將圖像發送給隨機用戶或多個用戶。 我的數據庫結構如下:
而且我不知道如何從 firebase 中獲取隨機用戶,我進行了搜索,但沒有找到適合我的結構的最佳解決方案。
我嘗試這篇文章: 如何在節點 Firebase 中獲得唯一的隨機產品?
但是代碼不起作用我有多個錯誤
提前感謝任何能夠給我一些解決方案的人。
編輯#1 我已經研究過它並且它正在工作,但我不知道如何將隨機限制為 3 個用戶。 在我的應用程序中,用戶可以更改用戶限制,因此我需要更改隨機限制。
我的代碼:
fun chooseRandomUser() {
val rootRef = FirebaseDatabase.getInstance().getReference()
val productsRef = rootRef.child("users")
val valueEventListener: ValueEventListener = object : ValueEventListener {
override fun onDataChange(dataSnapshot: DataSnapshot) {
val productList = ArrayList<String?>()
for (ds in dataSnapshot.children) {
val name = ds.child("username").getValue(String::class.java)
productList.add(name)
Log.d("FragmentActivity", "usernames : $name")
}
val productListSize = productList.size
val randomProductList = ArrayList<kotlin.Int>()
randomProductList.add(Random().nextInt(productListSize))
Log.d("FragmentActivity", "list : $randomProductList")
}
override fun onCancelled(databaseError: DatabaseError) {
Log.d("FragmentActivity", "Error: ${databaseError.message}")
}
}
productsRef.addListenerForSingleValueEvent(valueEventListener)
}
據我所知,您想從 firebase 數據庫中的所有用戶列表中選擇一個隨機用戶。 您可以在 android 端簡單地執行此操作。
我想您已經知道如何從 firebase 數據庫中獲取所有用戶。 將用戶存儲在列表中。 然后我會嘗試想出一個random
的 function 可以隨機給我一個列表的索引,我可以根據該隨機索引從列表中選擇該用戶。
同樣的實現也可以 go 從該列表中選擇多個用戶。
我希望這會有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.