【发布时间】:2016-11-07 17:41:23
【问题描述】:
我想知道,对于 identicons 和 gravatar 之类的东西,最好的方法是什么,但要快速将它们存储到 Firebase 并分配为 profileImage。
我想出的另一件事是制作图像 url-s 数组,并在注册时随机选择一个 url 并存储它。可以吗?
你们能引导我走向正确的方向吗?
【问题讨论】:
标签: swift firebase firebase-storage
我想知道,对于 identicons 和 gravatar 之类的东西,最好的方法是什么,但要快速将它们存储到 Firebase 并分配为 profileImage。
我想出的另一件事是制作图像 url-s 数组,并在注册时随机选择一个 url 并存储它。可以吗?
你们能引导我走向正确的方向吗?
【问题讨论】:
标签: swift firebase firebase-storage
我不建议您一次保存所有这些数据,尤其是在您最终拥有多张图片的情况下。我会推荐以下之一
一个头像
只需将所有新手的个人资料图片分配给此。您甚至可以继续将其存储在您的应用中,这样就无需调用 Firebase 或占用内存。
取决于功能
尝试根据用户的特定固定/事实特征分配头像。性是最可取的,因为它是二元的。 Facebook 在用户未添加个人资料图像时使用相同的方法。如果您选择此方法,则 真的 不需要 Firebase。
动态
多个默认头像可用并开放以供进一步添加。我猜你对这个很感兴趣。
将您的所有头像存储在 Firebase 中,然后让用户选择最吸引他们的头像。
由于您将来会添加更多头像,因此我建议您不要一次加载所有头像。对于内存优化,
这种方法对内存非常友好,不会让用户不知所措。
将您的头像存储在 Firebase 存储中,同时在您的 Firebase 数据库中包含一个节点,用于跟踪可用头像的数量。对于这种情况,我们称之为total。除此之外,我的头像节点中有一个数字字符串到头像 url 映射。我的结构将与此类似
{
"avatars":
{
"total":10,
"1":"https://www.google.com",
"2":"https://www.facebook.com",
"3":"https://www.youtube.com"
}
}
这就引出了一个问题,如何随机查询头像?
嗯嗯..
x 遵守1<=x<=total
x转换为字符串; y = String(x)
avatars.id == y 和瞧你有imageURL
imageURL下载图片
这样做的缺点是用户无法控制,如果他们讨厌自己的头像,他们无能为力。
好处是,在任何特定时刻,您都不会加载内存中的所有图像。
【讨论】: