sha*_*yal 3 android push-notification react-native firebase-cloud-messaging
我有一个安卓应用程序。对于通知,我们必须显示一些操作按钮。当应用程序打开时,我们可以自由地构建通知并显示操作按钮。
但是当应用程序关闭时,通知会在 Android 的通知托盘中收到。应用程序开发人员无法控制构建用户界面和操作按钮。我们现在如何显示按钮?如何从服务器端格式化数据,以便当应用程序接收到数据时,我们可以看到操作按钮
根据我的经验,发生这种情况是因为您正在发送通知消息。正如谷歌在这里清楚地解释的那样:
当应用程序处于后台时,通知消息将发送到通知托盘。对于前台应用程序,消息由回调函数处理。
现在,如果您想使用 Firebase Cloud Messaging 发送通知,并希望始终以您自己的自定义方式显示收到的通知,您可以使用不包含部分的FCM 数据消息notification
,如下所示:
{
"message":{
"token":"bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
"priority":"high",
"data":{
"title" : "Custom notif",
"body" : "This is a custom data notification!",
"action" : "A|B|C"
}
}
}
Run Code Online (Sandbox Code Playgroud)
收到此通知后,Firebase 不会将其显示在托盘面板中,而是将其传递到您的应用程序(无论您的应用程序位于前台还是后台)。然后,您可以使用该data
部分中的字段来创建和显示具有自定义操作的自定义通知。
您还可以将任何字段放入data
部分内,类似的字段title
只是示例。
客户端中的额外实现细节:
为了在 android(本机和/或反应本机)中处理数据消息,您可以使用远程消息(但使用不同的方式)。
React Native: 对于 React Native 中仅处理数据的通知,您可以使用此示例。
本机 android:
在本机 android 中,您可以使用onMessageReceived(RemoteMessage remoteMessage)
服务的方法(实现 FirebaseMessagingService)。然后通过remoteMessage.getData()使用有效负载数据,如此处所述。
归档时间: |
|
查看次数: |
3881 次 |
最近记录: |