2017-08-14 32 views
0

我正在研究分享想法的Android應用程序。我的應用使用Firebase存儲這些想法,當用戶打開應用時,我想從Firebase隨機獲取N個想法。 如何實現從Firebase中隨機獲取N項物品的功能?Firebase Android - 如何隨機獲取多個項目

+0

您的問題的答案已解決。 https://stackoverflow.com/questions/28154966/get-random-value-android-firebase-java –

+0

你的問題解決了。 https://stackoverflow.com/questions/28154966/get-random-value-android-firebase-java –

+0

請參閱https://stackoverflow.com/questions/40853157/firebase-random-query或(對於iOS,但同樣適用到Android)https://stackoverflow.com/questions/40765613/get-random-child-from-firebase-database –

回答

1

我不認爲有任何選擇從一個節點隨機獲取數據。但你可以從firebase數據庫中檢索所有數據,然後以編程方式顯示隨機數據。

+0

我的數據真的很大,我不知道是首先獲取所有數據的好主意。 ANW,謝謝你的回答:) –

+0

可以分享你的數據庫設計... –

+0

Idea項目並不複雜,但項目數量相當大。例如,如果我有> 10.000項目,這是否可以獲取所有數據? –

0

一種解決方案是創建爲理念鍵化合物鍵,基本上與串的索引加上一個數字

ideas 
    idea_0 
    idea: "The Wheel" 
    idea_1 
    idea: "Internal Combustion Engine" 
    idea_2 
    idea: "Electricity" 
    . 
    . 
    . 
    idea_X 
    idea: "Disco" 

然後,在代碼,從0生成一個隨機數到X ...然後追加將該隨機數字添加到字符串並從Firebase加載該節點。

因此,如果我們生成的隨機數2,關鍵是

idea_2 

,現在你有電!一定要讓隨機數發生器包含在內,所以你得到的數字從0到X;你不想忽略'迪斯科'的想法,對吧?例如

例如在循環中執行三次,您將有三個隨機想法。

相關問題