【问题标题】:Sequence of saving list of items from android app to firebase database将项目列表从 android 应用程序保存到 firebase 数据库的顺序
【发布时间】:2021-05-11 22:33:48
【问题描述】:

我正在将项目列表(通过一项一项添加)从我的应用程序保存到 firebase 数据库,当我添加第 10 个元素时,它在 1 个(键)节点不低于第 9 个节点之后保存,而第 2 个节点移动到 10 以下您可以在下图中看到。并且项目列表显示在 RecyclerView 中,其顺序与保存在 firebase 数据库中的顺序相同。为什么物品会这样保存??

【问题讨论】:

    标签: android firebase firebase-realtime-database


    【解决方案1】:

    这是预期的行为。 Firebase 实时数据库中的键是字符串,它们以所谓的字典顺序显示。

    如果你使用字母,你也会期望这个顺序:

    • 一个
    • b
    • c

    数字按字典顺序排序时也没有什么不同,就像这里一样。

    如果您想查看数字排序顺序,请考虑将数字填充为固定值,例如在它们前面加上零:

    • 作物:000
    • 作物:001
    • 作物:002
    • ...
    • 作物:010

    请注意,通常在 Firebase 中使用此类数字顺序值作为键是一种反模式,建议改用其内置的按键。有关更多信息,请参阅:Best Practices: Arrays in Firebase

    【讨论】:

    • 非常感谢!除了内置的按键,还有什么方法可以对列表进行排序?如果想在firebase数据库中手动保存项目列表然后在应用程序中检索它们怎么办?有没有办法手动生成按键??
    • 算法有完整文档,代码可用。请参阅firebase.googleblog.com/2015/02/… 要了解其他数据排序方式,请参阅:firebase.google.com/docs/database/web/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-07
    • 1970-01-01
    • 2021-03-14
    • 1970-01-01
    • 1970-01-01
    • 2017-12-12
    相关资源
    最近更新 更多