项目需要能够语音播报推送到app上的消息,并且需要能顾在后台没有打开app的情况也能够进行播报。查了下资料在IOS10后增加了新的特性Notification Service Extension通过应用拓展程序能够实现这一功能。
首先我们新建一个推送拓展
在主程序中选中Capabilities打开push Notifications与background Mode
再推送拓展.m文件中
- (void)didReceiveNotificationRequest:(UNNotificationRequest*)request withContentHandler:(void(^)(UNNotificationContent*_Nonnull))contentHandler
方法内对推送信息进行操作
后端推送回来的消息中必须包含mutable_content=1字段,否则推送不会调起拓展程序