android、apple PUSH 异同比较

相同点:

实现思路。 

自己的服务器与apple(APNS)或google PUSH服务器进行通信,PUSH服务器依据相应的条件(如:当前终端在线),向相应的终端设备发送PUSH信息。

 终端设备通过自己确定身份的机制告知PUSH服务器我存在,并将PUSH服务器返回给终端的一个ID发给自己的服务器,当自己服务器需要PUSH时,与Apple或android PUSH服务器通信,其中需发送ID信息。

不同点:

设备身份的确定 

 APPLE

每个终端设备独有设备证书,而APNS也有一个服务器证书,两者建立的时候,进行证书的有效性检查

PUSH认证检查分两层:

1 TLS加密连接

TLS连接成功,会将设备证书发给APNS,并每15分钟会进行一次TLS握手;若握手失败,会不断去连接。

2 令牌认证

TLS连接成功后,通过设备证书及密钥计算出每个设备的设备令牌,然后将设备令牌发给终端设备,以确定设备的唯一身份。

 Android

需要用户自己注册一个gmail邮箱,通过gmail邮箱确定终端设备。 

原文地址:https://www.cnblogs.com/maoyu417/p/2229659.html