gpt4 book ai didi

android - FCM 推送通知不会在屏幕顶部的通知上显示头像

转载 作者:行者123 更新时间:2023-12-03 14:58:53 24 4
gpt4 key购买 nike

我们在 Android 和 iOS 中使用 firebase 推送通知。使用 FCM REST API 调用发送推送。推送类型为 notification有额外的data节点。

这是一个示例有效载荷:

{ 
"notification" : {
"title": "title text",
"body": "message body text",
"sound": "default"
},
"data": {
"messageType": "xxx"
},
"to": "yyy",
"priority": "high",
"time_to_live": 0
}

当应用程序处于后台且手机处于开机状态时,此类推送通知不会显示平视显示。 -- 通知只是添加到通知栏,但不会在屏幕顶部向用户显示。 -- 无论当前应用是否为全屏应用。

我尝试过并且正在工作的一种解决方案是转为纯 data我们不会发送任何 notification 的消息节点,但只是 data节点并编写代码来自己显示通知,并在通知构建器对象上将通知优先级设置为 Max(即 .setPriority(Notification.PRIORITY_MAX) )。
但这似乎在 iOS 上存在问题,其中 data如果应用程序被用户杀死,则只有推送不会被接收/显示给用户。

那么有什么解决方法吗?任何适用于 Android 的解决方案,但也不会破坏 iOS。

最佳答案

对于 Android,您应该将 NotificationPriority 设置为 PRIORITY_HIGH 或 PRIORITY_MAX 以显示通知。见 Android NotificationNotification Priority更多细节。

您应该使用常量设置这些值,而不是使用字符串。例如。

{
token,
android: {
notification:
{
title,
body,
// See https://developer.android.com/reference/android/app/Notification#PRIORITY_MAX.
// This is deprecated in Android API level 26, but works for older versions.
notification_priority: 2,
// Always allow Android users to see the message in its entirety.
// See https://developer.android.com/reference/android/app/Notification#VISIBILITY_PUBLIC
visibility: 1
}
}
}

关于android - FCM 推送通知不会在屏幕顶部的通知上显示头像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43349534/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com