Docs 菜单
Docs 主页
/ /
Atlas Device SDKs
/ /

托管用户元数据 - Kotlin SDK

在此页面上

  • 读取用户的元数据
  • 可序列化的用户元数据
  • 配置用户元数据
  • 更新用户元数据

本页介绍如何使用Realm Kotlin SDK管理授权App Services App用户的用户元数据。 有关详细信息,请参阅App Services文档中的身份验证提供程序元数据

Atlas App Services 可以从身份验证提供者读取用户元数据。然后,App Services 会在每个用户的 User对象的字段中公开其数据。 例如,您可能想要访问用户的姓名、电子邮件、生日或性别。

您可以通过当前登录用户的User对象读取该用户的用户元数据。 您无法通过User对象编辑用户元数据。

要读取数据,请对已登录用户的User对象调用profileAsBsonDocument方法:

// Log in a user
val user = app.login(Credentials.emailPassword(email, password))
// Access the user's metadata
val userEmail = user.profileAsBsonDocument()["email"]
Log.i("The logged-in user's email is: $userEmail")

用户元数据选项因您使用的提供程序以及您启用的元数据字段而异。

警告

用户元数据可能已过时

Atlas App Services 在用户登录时获取最新版本的用户元数据。 例如,如果用户通过登录提供程序更改了其电子邮件地址或个人资料照片,则在用户再次登录之前,这些更改不会在用户元数据中更新。 由于我们会缓存凭证并允许您绕过登录流程,因此除非强制用户再次登录,否则用户元数据可能会过时。

1.9.0 版本中的新增功能

Kotlin SDK 版本 1.9.0 引入了一个 API,该 API 支持:

  • 一个有限但稳定的 EJSON 编码器,用于返回的用户元数据 User.profileAsBsonDocument()

  • 一个实验性 EJSON 编码器,支持对User.profile()返回的用户元数据进行完整文档序列化 扩展方法。 此编码器和方法需要实验性选择加入。

您必须添加官方 Kotlin序列化 库添加到您的项目中,以使用Realm Kotlin SDK 的EJSON序列化。有关详细信息,请参阅 序列化。

您只能从在 App Services 应用程序上配置的客户端应用程序读取用户元数据。

您可以配置从身份验证提供程序请求的用户元数据。 您可以直接在身份验证提供程序的配置上执行此操作。 有关可以使用哪些元数据字段的更多详细信息,请参阅提供商详细信息:

您可以通过编辑提供商的配置来更改已配置的元数据字段。

通过身份验证提供者访问的用户元数据是只读数据。您无法更新或编辑来自此来源的用户元数据。

如果您想让用户选择在客户端应用程序中更新其元数据,请改用自定义用户数据

后退

管理自定义用户数据