NotificationServiceExtension与App Group的结合使用

前言:

当收到推送消息时,若需要对远程推送的消息进行一定的修改操作时,可以使用NotificationServiceExtension通知拓展服务,由于NotificationServiceExtension是一个独立的拓展服务,因此,证书与app的Bundle ID都是独立的一套。

1.新建NotificationServiceExtension

点击New->Target->Notification Service Extension,如图:

01

2.NotificationService类说明

NotificationService类有两个方法,- (void)didReceiveNotificationRequest:(UNNotificationRequest *)request withContentHandler:(void (^)(UNNotificationContent * _Nonnull))contentHandler;里面可以处理远程推送内容,修改远程推送内容的时间是有限的(不超过30S)。如果修改内容任务没有完成,系统会调用第2个方法serviceExtensionTimeWillExpire,给你提供最后一次提供修改内容的机会。如果你没有修改远程推送成功,系统将会展示远程推送最原始的内容

3.推送服务拓展的Bundle Id的证书配置 

至此的话,NotificationServiceExtension就差不多了

如果需要在NotificationServiceExtension与主项目之间进行数据交流,则可以使用App Group。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容