我有一个用例,通知提供商最终以我想要更改的格式向我发送推送通知文本。我可以在应用程序的ObjectiveC / Swift代码中这样做吗?
答案 0 :(得分:6)
自 iOS 10 以来,可以通过为应用程序创建UNNotificationServiceExtension来修改推送通知的文本(除非它们是静默通知)。
扩展在Xcode中作为单独的Target创建,并为NotificationService类提供了两个函数,一个允许您修改推送通知的内容( didReceive withContentHandler ),另一个通知您的应用程序,如果 didReceive withContentHandler 没有及时完成( serviceExtensionTimeWillExpire )。
要实现此目的,还需要修改发送到您的应用程序的推送通知,以包含值 1 可变内容 >以便iOS知道为您的应用程序调用UNNotificationServiceExtension。
Apple的UNNotificationServiceExtension文档
答案 1 :(得分:2)
否则您无法更改通知提醒消息(文本),用户将在应用未处于前台状态时看到该消息。该用法将看到通知有效负载包含的相同文本。
答案 2 :(得分:1)
您的iOS应用在向用户显示之前无法修改传入的推送通知数据。