iOS ● 推送的简单思路

首先来看看官方的推送解析图 :

iOS ● 推送的简单思路_第1张图片

1、推送简单思路:


iOS ● 推送的简单思路_第2张图片

注: 下文中, A为张三 , B为李四

①A把自己设备的UDID和应用程序的BundleID发送给苹果APNs服务器;

②苹果的APNs服务器会将一个加密生成的DeviceToken发送给A;

③A将生成的DeviceToken和应用程序的标志(QQ号码或者是ID)发送给QQ服务器,服务器将这些数据存进数据库中(id,  name,  QQ号,DeviceToken)

注:B也会用同样的方式将自己的这些信息存进数据库的

④如果B给A发信息,发送请求到QQ服务器,去数据库中查找A对应的DeviceToken,找到A的DeviceToken后,通知苹果APNs服务器,通过A的DeviceToken找到A设备,将要发送的消息推送给A;


2、在使用推送时发现推送不到的原因有:

①首先先检查自己的设置是否允许该应用程序接受推送的通知;

②如果设备没有问题,就排查是否是绑定的deviceToken除了问题

③或者是UDID和deviceToken的绑定出现了问题

④就是证书的问题也会导致推送失败(比如说你安装的是测试证书,但是在选择推送的时候选择的发布证书,也会导致无法推送)

⑤就是设备的网络问题,如果网络不好也会导致推送丢包(但是这种概率不是特别高)

建议:极光推送有一个cms后台,我们可以注册一个免费的账号去试一下

你可能感兴趣的:(iOS ● 推送的简单思路)