iOS 推送业务详解

ps:本文主要讲解推送的业务,实现参考其他文章

一、基本原理详细操作

参考:http://www.cnblogs.com/kenshincui/p/4168532.html#localNotification

基本原理和流程如下图:

ps:图片来自网络

iOS 推送业务详解_第1张图片
170829062654087.jpg
iOS 推送业务详解_第2张图片
170829082191417.jpg

二、业务集成实现

ps:以友盟推送为例

1、创建推送证书(包括生产模式和开发模式的两个证书)

ps:由于苹果机制推送必须要有付费开发者账号到苹果开发者中心创建证书
创建证书的流程参考:(这里很详细就不细讲)
http://dev.umeng.com/push/ios/license-configuration-guide

2、集成友盟sdk

ps:证书创建好之后,按照友盟的文档说明,在账号的后台配置好两个证书,需要测服务器调api推送的话需要配置服务器ip。网站均有说明

(1)集成流程
按照网站,下载sdk和demo,按照demo和说明操作即可。
参考链接: http://dev.umeng.com/push/ios/integration

3、集成业务介绍

(1)集成好后,可以使用友盟后台测试推送消息效果。
(2)友盟网站有各种服务器语言后台demo代码,后台人员根据说明和api说明进行集成使用。(实现针对单个用户推送)
api参考: http://dev.umeng.com/push/ios/api-doc
(3)整体业务介绍
ps:业务需求是登录后才对用户进行推送
实现方法:

  • 1、通常用户登录时,调取后台接口将device_token上传给服务器存在用户表内,后期推送可以根据用户标识找到token进行单个推送
  • 2、另外用户表内增加一个是否可以推送的字段,用户登录时将它设为1可推送,退出登录时清掉用户信息将它设为0不应许推送(服务其推送是判断该字段为1方可调取推送接口)

四、推送方案对比

推送方案大方向可以采取两种
1、第三方推送服务(包括:极光推送、友盟、个推等)

三方服务的选择,可以网上找找评论自己多测试,看哪一个更满足需求性能更好根据公司需求选择。

2、公司自己内部做推送服务器实现推送业务

内部实现的话,技术要求相对要高一点。需要自己去了解apns服务器的推送协议。

3、两者对比
第三方服务:

优点:现实简单,技术要求不高、省时间、有统计平台可以查看数据
缺点:消息经过第三方发送,安全隐私也暴露给第三方了。另外第三方的推送次数有限制。高要求时需要付费

自己实现推送服务

优点:安全性、更好的保护数据隐私、推送次数不受限制、不需要付费
确定:实现更加麻烦、技术要求更高、开发周期长、没有专业的推送开发沉淀可能会出bug影响业务的稳定性

你可能感兴趣的:(iOS 推送业务详解)