Android Firebase如何在特定用户下保存和检索数据
Posted
技术标签:
【中文标题】Android Firebase如何在特定用户下保存和检索数据【英文标题】:Android Firebase how to save and retrieve data under specific user 【发布时间】:2016-08-07 07:26:52 【问题描述】:我正在尝试将我的应用与 firebase 集成以将简单数据保存在云端。
示例:
用户打开应用并登录。
用户写一些东西,数据保存在云端。
当用户再次使用该应用时,他将看到他的数据。
我已阅读文档,但找不到任何示例 结构在用户和数据之间起作用。 用户已登录,现在如何为该用户保存字符串/对象?
我尝试了什么:
用户登录或验证用户
Firebase ref = new Firebase("https://<YOUR-FIREBASE-APP>.firebaseio.com");
ref.addAuthStateListener(new Firebase.AuthStateListener()
@Override
public void onAuthStateChanged(AuthData authData)
if (authData != null)
// user is logged in
else
// user is not logged in
);
现在如何在该用户下保存对象/字符串?
【问题讨论】:
【参考方案1】:您似乎正在使用旧的 android API for Firebase。
使用最新的 Android API,您的代码中不再需要 "https://<YOUR-FIREBASE-APP>.firebaseio.com"
。
我建议迁移,使用that migration guide。
一旦您按照guide 登录您的用户
然后您可以将用户信息存储在documentation 中:
String userId = FirebaseAuth.getInstance().getCurrentUser().getUid();
mDatabase.child("users").child(userId).child("name").setValue("John");
不要忘记更改您在 Firebase 中的安全规则,以确保只有此用户可以访问他自己的数据:guide here。这样做非常简单快捷,而且对于保护用户数据的私密性非常重要。
【讨论】:
以上是关于Android Firebase如何在特定用户下保存和检索数据的主要内容,如果未能解决你的问题,请参考以下文章
我如何在 firebase firestore android 中检索文档以匹配我的特定登录凭据
如何使用 Firebase 中的用户令牌向特定用户发送通知?