我在我的应用程序中看到了一些意想不到的行为,我希望有人能帮我解释一下。
我有一个接收通知的应用程序,当用户打开应用程序时,它使用UNUserNotificationCenter.current().getDeliveredNotifications API获取用户通知中心中的所有通知。
我们的服务通过APNS定期发送的通知。
但是,如果用户随后在系统级别(在Settings应用程序中关闭)关闭了我的应用程序的通知,那么notifications似乎仍在接收通知。即使设备上的Notification中没有显示任何通知,调用UNUserNotificationCenter.current().getDeliveredNotifications也总是返回用户在打开通知时通常会收到的新通知。
我真的被这种行为弄糊涂了。我希望an停止发送通知给已经关闭应用程序的用户。即使对于关闭通知一个月的用户,UNUserNotificationCenter仍然返回新交付的通知。
这可能与iOS 12的“悄悄交付”功能有关吗?任何帮助都会很好。
发布于 2020-07-17 14:28:34
它在iOS 12中工作,但在iOS 13中不起作用。从iOS 13看上去,它开始工作是一个有记录的文件:
如果应用程序的通知中没有一个是Notification中可见的,则数组为空
不幸的是,我在发行说明中找不到这个变化..。
因此,一旦通知被用户关闭,通知在Notification中就不再可见,并且不会在getDeliveredNotifications中返回
https://stackoverflow.com/questions/55055389
复制相似问题