gpt4 book ai didi

ios - 防止在您发布到 PubNub 时向您发送推送通知

转载 作者:行者123 更新时间:2023-12-01 20:19:30 26 4
gpt4 key购买 nike

我正在 iOS 上构建聊天功能。我正在使用 PubNub 的发布/订阅系统在客户端之间发送消息。

问题:

每当我发布到我订阅的 channel 时,我也会收到我发送的消息的推送通知。虽然,当应用程序在前台时我可以简单地忽略这一点,但当通知延迟并且应用程序进入后台时会出现问题。

我只想在其他人向 channel 发送消息时收到推送通知。收到您发送消息的通知是没有意义的。

我正在考虑的一个解决方案是为推送通知创建额外的 channel ,但我发现这效率低下而且有点笨拙。请告诉我还有另一种解决方案。

最佳答案

PubNub 发件人识别实现
最好的解决方案是使用静默推送通知并将发送者的 UUID 包含在消息负载中。这是一个例子:

{
'pn_apns': {
'aps': {
'content-available':1
},
'sender_id':'user123',
'content':'this could be more key/values that you can process on the device'
},
'data': 'realtime key/values goes here'
}
然后在设备上的静默推送处理中,可以这样做:
if uuid != my_uuid then display msg; else do nothing
您可以使用我们的 Badge Count Demo当在设备上接收到无声推送通知以计算准确的角标(Badge)计数时,使用无声推送通知来获取历史记录的应用程序。只需将历史获取代码替换为 is this from me 代码即可。
您还应该查看 Configuring a Silent Notification Apple Documentation有关静默推送如何工作的完整详细信息。
默认情况下,Android 推送通知是无声的,您必须明确显示它们,以便在需要时可以使用 GCM 在该平台上工作。
很快就会有一个更优雅的解决方案,但在推出这些增强功能之前,以上内容应该可以满足您的需求。

关于ios - 防止在您发布到 PubNub 时向您发送推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35970996/

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