iOS 实现消息推送及原理分析

摘抄:脚本之家

一、消息推送原理

在实现消息推送之前先提及几个于推送相关概念,如下图:

这里写图片描述

1、简介

  • (1)、Provider:就是为指定IOS设备应用程序提供Push的服务器,(如果IOS设备的应用程序是客户端的话,那么Provider可以理解为服务端[消息的发起者]);

  • (2)、APNS:Apple Push Notification Service[苹果消息推送服务器];

  • (3)、iPhone:用来接收APNS下发下来的消息;

  • (4)、Client App:IOS设备上的应用程序,用来接收iphone传递APNS下发的消息到制定的一个客户端 app[消息的最终响应者];

2、阶段

上图可以分为三个阶段:

阶段一:Provider[服务端]把要发送的消息,目的IOS设备标识打包,发送给APNS;

阶段二:APNS在自身的已注册Push服务的IOS设备列表中,查找有相应标识的IOS设备,并将消息发送到IOS设备;

阶段三:IOS设备把发送的消息传递给对应的应用程序,并且按照设定弹出Push通知。

3、过程

  • (1)、[Client App]注册消息推送;

  • (2)、[Client App]跟[APNS Service]要deviceToken, Client App接收deviceToken;

  • (3)、[Client App]将deviceToken发送给[Provider]Push服务端程序;

  • (4)、当Push服务端程序满足发送消息条件了,[Provider]向[APNS Service]发送消息;

  • (5)、[APNS Service]将消息发送给[Client App]。

这里写图片描述

二、消息推送实现

1、生成*.certSigningRequest文件

步骤如下:
[MacBook-应用程序-实用工具-钥匙串访问-证书助手-从证书机构求证书-证书信息(用户电子邮箱地址{填写您的邮箱,如:your@email.com},常用名称{任意,如:PushDemo},请求是:{单选,选择‘存储到磁盘’})-继续-保存],这时会在您指定的地方生成你指定的文件,默认为CertificateSigningRequest.certSigningRequest文件,这里命名为:PushDemo.certSigningRequest.在此*.certSigningRequest已经生成,具体操作步骤如图所示。

这里写图片描述
这里写图片描述

如果生成成功,则会在[钥匙串访问|登录|密钥]栏目中列出与*.certSigningRequest关联的密钥,这里是PushDemo,如图所示:
这里写图片描述

2、新建一个App ID(在苹果开发者账号中配置)

(1)、 登录iOS Dev Center,登录成功后,点击(Certificates,Identifiers&Profiles对应链接),如图所示:
这里写图片描述
(2)、创建APP IDs
这里写图片描述
填写信息
这里写图片描述
选中Push Notifications

这里写图片描述

点击创建,生成APP IDs
这里写图片描述

(3)、绑定推送证书

编译上边创建的APP IDs
这里写图片描述
Development 测试推送
Production 生产推送
这里写图片描述
选中上面创建的certSigningRequest文件;
这里写图片描述
点击下载。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaoxiaobukuang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值