根据用户的uid获取其他用户的数据

时间:2018-06-04 19:00:36

标签: java android firebase firebase-authentication

我试图在文档中恭维以下内容:

UserRecord userRecord = FirebaseAuth.getInstance().getUser(uid);

然而,它似乎没有被识别,也没有选择导入任何东西以便能够使用它。

我的构建文件中有以下内容:

    implementation 'com.google.firebase:firebase-core:16.0.0'
    implementation 'com.google.firebase:firebase-auth:16.0.1'
    implementation 'com.google.firebase:firebase-database:16.0.1'
    implementation 'com.google.firebase:firebase-storage:16.0.1'
    implementation 'com.firebaseui:firebase-ui-database:3.2.2'

2 个答案:

答案 0 :(得分:1)

您的问题中的代码来自Firebase管理SDK,它是一个SDK,适用于您控制的环境(例如服务器或您的开发笔记本电脑)。

您共享的build.gradle片段适用于Android应用。 Firebase Admin SDK与Android应用程序不兼容。

无法在Android SDK中获取其他用户的用户个人资料。如果有的话,任何人都可以对您的Android应用进行逆向工程,并为您的任何用户查找信息。

您可以使用Admin SDK公开您的Android应用可以调用的端点。但是您需要以自己的方式为此设置Java端点,或者使用Admin SDK for Node.js并从Cloud Functions提供它。在其中任何一种情况下,请注意,允许此类查找的未受保护的端点可能会被视为您的用户违反信任。

答案 1 :(得分:0)

除非您知道自己在做什么,否则无法获取所有用户数据。

第一步创建名称用户的JSON ARRAY,其中包含您添加的所有用户ID。

第二步调用datasnapshot中的用户获取所有ID,如果需要,可以将用户数据保存在实时数据库中的那些uid中。

您无法获得所有用户的信息,而不是实时数据

相关问题