选择显示或忽略推送通知客户端?

Posted

技术标签:

【中文标题】选择显示或忽略推送通知客户端?【英文标题】:Choose to show or ignore push notifications client side? 【发布时间】:2019-03-17 17:50:39 【问题描述】:

我们希望在 androidios 中向符合特定条件的一组用户发送推送通知。我们可以通过调用 API 来检查用户是否符合这个条件。

我们的问题是用户信息变化非常快,我们无法在我们的推送通知引擎 (OneSignal) 中跟踪这一点。

我们能想到的唯一选择是向所有用户发送推送通知,客户端调用 API 以获取最新的用户信息。根据这一点,我们可以选择显示通知或忽略它。

这可以在 Android 和 iOS 上实现吗?

【问题讨论】:

【参考方案1】:

是的,在NotificationExtenderService 的帮助下,这是可能的。

在后台接收通知。通知数据包含在OSNotificationReceivedResult 对象中。现在,阅读每个通知应该是唯一的通知 ID/标题。

将此唯一的通知标题/ID 与用户 ID 一起发送到 API,API 将返回是否向用户显示通知。如果true 则从OSNotificationReceivedResult 读取通知标题和消息/描述,并通过NotificationCompat 发出通知,否则忽略它。

Reference

【讨论】:

仅供参考,我说的是 Android 端 OSNotificationReceivedResult 正在调用,但在此之前显示的是 notificaiotn 。你能帮忙吗? @isamirkhaan1【参考方案2】:

这是 100% 可能的。在接收器类中,您调用一个意图服务,它可以根据您使用通知生成器创建通知的信息访问 api 并获取最新信息,如果您不想要,请避免。

【讨论】:

以上是关于选择显示或忽略推送通知客户端?的主要内容,如果未能解决你的问题,请参考以下文章

是否可以选择 iOS 推送通知仅显示在通知中心?

如何取消或停止来自客户端的推送通知?

应用程序从后台转移到前台时忽略推送通知

当其他设备前景时,我应该停止发送推送通知吗?

清除以前的世博推送通知

网络推送通知不显示电脑是不是关闭或睡眠