Android - 如何从多个设备检测同一用户?

标签 android firebase firebase-cloud-messaging

我正在开发一个将用户创建的数据发送到服务器的应用。

当他在不同设备上使用该应用程序时是否可以识别同一用户我的应用程序不必请求访问他的 Google 帐户、需要额外的权限或要求他创建自定义登录凭据? (这很重要,因为我的应用需要为“匿名”用户工作。)

我的应用程序使用推送通知,并且对于任何给定用户,我了解 FireBase 生成的 token ID 对于他安装该应用程序的每个设备可能都是相同的。所以我正在考虑使用这些 token ID 来跨多个设备识别同一用户。但是,我不确定这种方法有多可靠 - 或者是否有更好的方法?

注意 - 我找到了 Best Practices for Unique Identifiers (特别是 Handling Multiple Installations 部分),但没有帮助。

最佳答案

我们可以使用同一个帐户管理多个安装,

  1. 使用 firebase 生成设备 token
  2. 在本地和服务器上存储 token
  3. 在初始屏幕上始终检查本地存储的 token 和服务器上存储的 token
  4. 如果显示差异,要求用户仅保持一台设备处于 Activity 状态以接收通知, 如果用户选择了当前设备,则将该 token 存储到服务器。

关于Android - 如何从多个设备检测同一用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40887882/

相关文章:

android - 如何在android中停止ASyncTask线程

android - 什么是 android sdk 平台?对于某些 api 级别,我需要哪些包详细信息?

java - 如何初始化 Cloud Firestore Bean 以在所有包中使用?

android - Firebase GeoFire,检索从我当前位置到特定半径的帖子

javascript - 服务 worker 安装过程中的 Firebase 消息警告消息

java - PushApps 注册和注销菜单按钮

android - Cordova 相机不会旋转图片以纠正三星 S3 上的方向

firebase - 在 Flutter App 中查找邮箱和用户名是否已经存在于 Firebase Auth 中

android - 在不同的 Firebase 项目上使用相同的服务器 key

iOS FirebaseCloudMessaging 通知在调试/测试飞行或发布中不起作用