【问题标题】:How to send notification to specific user from web application to mobile application如何从 Web 应用程序向移动应用程序发送通知给特定用户
【发布时间】:2019-09-14 14:43:53
【问题描述】:

我有一个 Web 应用程序和移动应用程序来管理用户包裹。现在,我想当用户收到包裹时,通过移动应用程序从网络应用程序向他发送通知。

我使用OneSignal并成功连接了我的移动应用程序,但不知道哪个以及如何调用api来向特定用户发送通知?

另外,我阅读了文档,但找不到任何方法和示例来满足此要求

【问题讨论】:

  • 您可以使用设备生成的唯一令牌发送推送通知
  • 我知道,但我怎样才能获得特定用户的唯一设备令牌?
  • 我的意思是如何在我的网站中访问该令牌并使用该令牌调用 api?
  • 您可以在从设备登录时发送该令牌并存储在服务器端

标签: java android spring push-notification onesignal


【解决方案1】:

向移动设备发送推送通知最流行的方式是使用 Google Firebase 推送通知

每台设备都由 Firebase(Android 或 iOS)生成的唯一设备令牌进行跟踪。

您的用例解决方案:

  • 每当用户尝试登录您的应用程序时,只需触发对后端的 API 调用。

  • 该 API 将使用 userId 和设备令牌将条目放入数据库。

  • 当您要发送推送通知时,只需使用 Firebase SDK 根据 userId 从数据库中获取设备令牌。

示例:

为可能是 Android 或 IOS 的多个设备 ID 发送通知。

您可以在 fireBase 中使用 MulticastMessage。

                    MulticastMessage multiCast = MulticastMessage.builder()
                        .putAllData(new HashMap<String, String>() { put("message":"hi"); })
                        .setApnsConfig(ApnsConfig.builder().build())
                        .setAndroidConfig(AndroidConfig.builder().build())
                        .addAllTokens(Arrays.asList("devicetoken1", "devicetoken2"))
                        .build();

供参考:https://firebase.google.com/docs/cloud-messaging/send-message

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-27
    • 1970-01-01
    • 1970-01-01
    • 2018-07-06
    • 1970-01-01
    • 2021-07-13
    相关资源
    最近更新 更多