【问题标题】:Android PushUp Notification on data change [closed]Android PushUp 数据更改通知[关闭]
【发布时间】:2019-09-06 22:34:38
【问题描述】:

例如,如果一个用户收到另一个用户的帖子,那么通知用户有新评论的最佳方式是什么?数据存储在 MariaDB 数据库中,后端是 NodeJS。我已经尝试过使用 Google Firebase,但我不知道如何检查用户帖子是否有新评论。

【问题讨论】:

  • 解决问题有两个步骤:1) 找出哪些用户有新的 cmets,2) 向这些用户发送通知。由于您在第 1 步中苦苦挣扎,因此我建议您将问题限制在此范围内。编辑您的问题以包含您的数据库架构(您拥有哪些相关的表和列)以及您已经尝试过的 SQL。如果您包括这些,并删除与该最小问题无关的任何内容,则更有可能有人可以提供帮助。

标签: android node.js firebase mariadb


【解决方案1】:

首先,您应该在服务器级别管理 Firebase 令牌。当用户登录您的应用程序时,您可以在服务器上更新设备令牌。 现在,一旦任何用户发表新评论,您就会知道该帖子的创建者。从您的数据库中获取 Firebase 令牌,准备数据通知负载并向 Firebase 服务器发送请求,Firebase 服务器会将您的负载发送到您的客户端(该帖子的创建者)。 在应用程序级别 onMessageReceived(RemoteMessage remoteMessage) 方法将被调用。现在您可以从 remoteMessage 对象获取有效负载,并可以在 Notification Channel 上推送通知。

对于 Android 中的 Firebase 集成,您可以按照快速入门示例 https://github.com/firebase/quickstart-android/tree/master/messaging

要将请求从您的应用服务器发送到 Firebase,您可以使用 Firebase Rest API 以下是您的用例中的示例。

POST https://fcm.googleapis.com/v1/projects/myproject-b5ae1/messages:send HTTP/1.1
Content-Type: application/json
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
{"data":
{"user_profile_thumbnail":"profile thumbnail of user who comment to show on
 notification","post_id":"System generated post
id","user_name":"Name of user","comment_id":"system generated comment 
id","user":"commented user key(may be primary key to identify 
user"},"to":"post_creator_FCM_Token"
}

更多详情,您可以查看: https://firebase.google.com/docs/cloud-messaging/send-message

【讨论】:

    猜你喜欢
    • 2015-06-12
    • 2021-05-03
    • 1970-01-01
    • 2014-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多