当前位置: 首页 > 知识库问答 >
问题:

一个用户到多个设备的Firebase通知-Android问题[重复]

柯河
2023-03-14

我有一个web应用程序,它为每个用户保留一个用户ID和firebase通知令牌。用户和令牌在Android设备上创建并发送到服务器,因此服务器知道在哪里发送通知(因为令牌)。

这里的问题是,一个用户可以登录多个设备。如果用户在两台设备上,那么我应该向这两台设备发送通知。web应用程序知道一个用户ID有两个令牌。这没关系。

但是如果我在同一台设备上卸载并安装应用程序会怎么样呢。我为用户获得了一个新的令牌,因此我将其保存到web app,但是我有3个令牌用于一个用户ID。这是不正确的,因为我应该只有2个令牌(一个令牌是旧的)。

我知道我也可以保存设备ID(UUID),所以我知道在那个设备上令牌已经更改,所以我可以删除该设备的旧令牌。但对于Android SDK 23及更高版本,我需要请求特殊权限来读取UUID。但是我不想打扰用户请求访问UUID的权限。

所以我这里有个问题。我想在我的web应用程序上只保留一个用户ID的有效令牌(如果该用户有两部手机,那么我应该只为该用户保留两个令牌),但如果用户不接受许可,我不知道如何进行。

请帮帮我,我真的找不到标准溶液,我想有一些标准溶液。

谢谢!

共有1个答案

斜浩穰
2023-03-14

如何尝试获得它请求许可的唯一id?

请试试这个,它似乎不要求任何运行时权限

Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);
 类似资料:
  • 我在Android中使用termux我使用tcpip连接我的我不能执行命令原因显示多个设备连接adb设备设备列表附加模拟器-5554设备

  • 问题内容: 我正在关注http://javapapers.com/android/google-cloud-messaging-gcm-for-android- and-push-notifications/ 吗?通过GCM发送推送通知。一切正常,但是,我只能将推送通知发送到一台设备。注册另一台设备将替换先前设备的注册ID。我在http://javapapers.com/android/andro

  • 我对Firebase通知有问题,如果我在应用程序在屏幕上运行时发送通知,通知会正确显示如下: 如果我在后台运行应用程序时发送通知,则通知如下所示: 这是我的FirebaseMessagingService类 为什么会这样?

  • 我需要向多个设备发送GCM通知。在这里,我制作了PHP代码以从MySql获取注册ID数组,并尝试向多个设备发送通知,但这里有一些问题。 我的PHP代码:

  • 我关掉了又打开了我手机的Wifi,然后手机就收到了那些通知。我在模拟器上打开和关闭平面模式,然后模拟器收到这些通知。我的应用程序有问题吗?还是用火力点?(我已经使用权限)。有什么建议吗? 谢谢!

  • 当我手动启用自动启动,然后它将工作良好。但是如果没有启用自动启动,它将无法工作。 我需要启动我的服务,每当应用程序得到firebase推送通知在所有设备没有启用自动启动。