![](/img/trans.png)
[英]How do I get 'onMessageReceived' to trigger on Notification (HMS Push Kit) in React Native?
[英]How to get a notification automatically processed by the app when received in HMS Push Kit and React Native?
我正在使用 react-native v0.61.5 和最新版本的 react-native-hms-push (App) 和 hms-push-serverdemo-nodejs。
我的服务器应用程序能够同时发送两个通知消息和数据消息。
我不清楚的是,必须如何实现消息才能实现这一点:
当应用程序处于终止状态时 state:收到消息,声音响起并出现气泡,用户点击通知气泡,应用程序在打开时处理通知有效负载
当应用程序处于终止状态时 state:收到消息,声音响起并出现气泡,用户打开应用程序而不点击通知气泡,应用程序在打开时处理通知负载
当应用程序在后台时 state:收到消息,响起并出现气泡,用户打开应用程序而不点击通知气泡,应用程序在打开时处理通知负载
当应用程序在后台时 state:收到消息,响起并出现气泡,用户打开应用程序而不点击通知气泡,用户打开应用程序而不点击通知气泡,应用程序处理通知有效负载同时开幕
当应用程序在前台时 state:收到一条消息,发出声音并且没有出现气泡,(没有要点击的气泡),应用程序突然处理通知负载
为了满足上面列出的所有这 5 个要求,我们遇到了一些困难。 我们必须从服务器端发送什么? 数据消息还是通知消息?
我们还尝试使用:
let message = {
notification: {...},
android: {androidConfig..., notification: {foreground_show: [false|true]}},
token: new Array(pushDeviceToken)
};
两个都:
let message = {
data: notification,
android: {androidConfig..., notification: {foreground_show: [false|true]}},
token: new Array(pushDeviceToken)
};
但似乎没有最好的选择......
还有一件事:似乎foreground_show
不适用于通知消息,当我将应用程序保持在打开的 state 并发送带有foreground_show: true
的通知消息时,没有出现气泡并且应用程序不处理通知。
原因也可能是 App 端的错误配置。 由于我们是 HMS Push Kit 的新手,所以不太清楚如何配置它。
更新
如果 App 处于被杀死的 state 中,可能无法接收推送数据消息通知。 如果您确实需要使用数据电文,您可以申请高优先级数据电文特别许可。 但同时,申请条件严格,可能很难通过。
只有在用户单击通知后才能触发通知消息。
所以,对于你提到的“前台不自动处理通知消息”的场景,建议先使用服务端交互覆盖前台场景。 如果由于后台应用程序或 Kill-State 而无法处理消息,请使用通知消息。
当应用程序处于终止状态时 state:收到消息,声音响起并出现气泡,用户点击通知气泡,应用程序在打开时处理通知有效负载
在常用的通知消息中,您可以选择消息 > 通知 > 数据来设置自定义参数(有效载荷)。 打开应用程序时,可以调用onNotificationOpenedApp
事件获取相关内容。
当应用程序处于终止状态时 state:收到消息,声音响起并出现气泡,用户打开应用程序而不点击通知气泡,应用程序在打开时处理通知负载
建议应用启动时通过连接应用服务器获取相关信息,启动时清除已有通知(原生Android函数)。
当应用程序在后台时 state:收到消息,响起并出现气泡,用户打开应用程序而不点击通知气泡,应用程序在打开时处理通知负载
建议app通过连接应用服务器获取相关信息,启动时清除已有通知(原生Android功能)。
当应用程序在后台时 state:收到消息,响起并出现气泡,用户打开应用程序而不点击通知气泡,用户打开应用程序而不点击通知气泡,应用程序处理通知有效负载同时开幕
和上一个问题一样。
当应用程序在前台时 state:收到一条消息,发出声音并且没有出现气泡,(没有要点击的气泡),应用程序突然处理通知负载
您可以参考以下指南进行配置: https://developer.huawei.com/consumer/en/doc/development/HMSCore-Guides-V5/android-fgrd-show-0000001050040126-V5?ha_source=hms1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.