2

在对 iOS 11 预览版进行一些测试时,我注意到当我在我的应用程序处于前台时收到推送通知时,操作系统会显示系统通知,您通常只会在应用程序未处于活动状态时看到该通知。

我没有看到任何宣布已更改的内容,也没有看到任何新的 API 以某种方式改变这种行为。有谁知道或有文档链接说明这是有意的、错误、临时的还是什么?

4

1 回答 1

2

在 UserNotification 框架中,有一个选项可以在前台显示推送通知。

 - (void)userNotificationCenter:(UNUserNotificationCenter *)center 
        willPresentNotification:(UNNotification *)notification 
          withCompletionHandler:(void (^)(UNNotificationPresentationOptions options))completionHandler 

引用框架的评论:

只有当应用程序在前台时,才会在委托上调用该方法。如果方法未实现或处理程序未及时调用,则不会显示通知。应用程序可以选择将通知呈现为声音、徽章、警报和/或在通知列表中。该决定应基于通知中的信息是否对用户可见。

这可能是开始寻找答案的地方。

于 2017-08-16T13:04:20.677 回答