美文网首页
NotificationService(推送带图片)

NotificationService(推送带图片)

作者: WavesFisherman | 来源:发表于2019-05-14 10:33 被阅读0次

    需求: 推送通知栏需要显示商品图片

    接到需求之后就开始做了, 之前也没有做过这个东西, 但是别人家的产品有这个功能, 只能撸起袖子就是干了, 于是搜索了一番已经有前人做过这方面的资料可以借鉴, 废话不多说, 直接上

    这个功能是iOS 10 以后才有的苹果爸爸提供的服务, 应该隶属于推送相关的服务里

    Xcode 版本 10.2。Mac 系统 macOS Mojave 10.14.4

    第一步 : 

    第二步:

    Select Notification Service Extension 填写 Product Name , 其他的默认就好

    然后工程目录下就会生成一个新的工程, 如下图

    推送通知服务扩展

    这是系统提供的用来拦截推送通知的类, 我们主要做的就是在这里拦截推送,然后按需处理

    - (void)didReceiveNotificationRequest:(UNNotificationRequest*)request withContentHandler:(void(^)(UNNotificationContent*_Nonnull))contentHandler {

    }

    主要是在这个函数里面处理, 具体代码如下

    里面包含了一个下载的方法(用的系统自带的下载方法, 你可以依赖第三方库, AFN, YTK等, 只要将attachment返回便是)

    有些人看到这里以为结束了, 代码逻辑确实可以说结束了, 但是你现在应该还不知道如何断点调试这个target吧

    找到 Manage Schemes 添加对应的Scheme, 效果如下图

    运行 , 选择你的Main Target , 也就是你原来工程的target, 跑起来

    选择的Main App 

    断点打起来就可以调试了

    注意: "mutable-content":1 这个字段一定要加上, 这个是告诉苹果APNs我需要修改推送展示内容

    具体的推送格式如下 (不同的第三方推送服务可能配置不一样, 但是mutable-content这个字段务必得加到aps里面)

    原文链接: https://www.jianshu.com/p/7a5c9af61177  转载请注明出处

    相关文章

      网友评论

          本文标题:NotificationService(推送带图片)

          本文链接:https://www.haomeiwen.com/subject/jhgvoqtx.html