小编won*_*suc的帖子

Firebase 存储文件结构的最佳实践是什么?

我想将用户的个人资料图片存储在 Firebase 存储上。

\n\n

我的 Firebase 数据库结构如下所示。

\n\n
users\n  \xe3\x84\xb4 KXkVAYQOV92tW27Wk0C\n       \xe3\x84\xb4 uid: "EAGZwcgvgAcgErO7rfm7IHI91fk2"\n       \xe3\x84\xb4 sex: "F"\n       \xe3\x84\xb4 age: 24\n  \xe3\x84\xb4 KXkVR1rc2riXyGFl69E\n       \xe3\x84\xb4 uid: "alE4qM1vg2c9OrW5lVo7IvQk02Hv"\n       \xe3\x84\xb4 sex: "M"\n       \xe3\x84\xb4 age: 21\n
Run Code Online (Sandbox Code Playgroud)\n\n

现在我想知道我的 Firebase 存储文件结构应该如何。

\n\n

想法一:

\n\n
images\n  \xe3\x84\xb4 users\n      \xe3\x84\xb4 EAGZwcgvgAcgErO7rfm7IHI91fk2\n           \xe3\x84\xb4 profile.png\n           \xe3\x84\xb4 something.png\n      \xe3\x84\xb4 alE4qM1vg2c9OrW5lVo7IvQk02Hv\n           \xe3\x84\xb4 profile.png\n           \xe3\x84\xb4 something.png\n
Run Code Online (Sandbox Code Playgroud)\n\n

想法2:

\n\n
images\n  \xe3\x84\xb4 profile\n      \xe3\x84\xb4 EAGZwcgvgAcgErO7rfm7IHI91fk2.png\n      \xe3\x84\xb4 alE4qM1vg2c9OrW5lVo7IvQk02Hv.png\n  \xe3\x84\xb4 something\n      \xe3\x84\xb4 EAGZwcgvgAcgErO7rfm7IHI91fk2.png\n      \xe3\x84\xb4 alE4qM1vg2c9OrW5lVo7IvQk02Hv.png\n
Run Code Online (Sandbox Code Playgroud)\n\n

哪一项是 Firebase 存储在性能和可用性方面的最佳实践?
\n任何建议将不胜感激!

\n\n

编辑:
\n正如 Lirianer\ 的评论,数据库应如下所示。

\n\n …

database-design nosql firebase firebase-realtime-database firebase-storage

5
推荐指数
1
解决办法
1687
查看次数

我应该在使用"addListenerForSingleValueEvent"后删除

正如文档所说,SingleValueEvent的监听器只运行一次.
那么在使用它之后是不必删除监听器?

final Query query = getChatsRef().limitToLast(20);
query.addListenerForSingleValueEvent(new ValueEventListener() {

    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        query.removeEventListener(this);         
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        query.removeEventListener(this); 
    }
});
Run Code Online (Sandbox Code Playgroud)

android firebase firebase-realtime-database

4
推荐指数
1
解决办法
570
查看次数