ios消息推送

58同城高性能移动Push推送平台架构演进之路

一曲冷凌霜 提交于 2019-12-22 14:47:32
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 本文详细讲述58同城高性能移动Push推送平台架构演进的三个阶段,并介绍了什么是移动Push推送,为什么需要,原理和方案对比;移动Push推送第一阶段(单平台)架构如何设计;移动Push推送典型性能问题分析解决,以及高可用、高性能、高稳定性如何保证。 什么是移动Push推送 移动Push推送是移动互联网最基础的需求之一,用于满足移动互联环境下消息到达App客户端。以转转(58赶集旗下真实个人的闲置交易平台)为例,当买家下单后,我们通过移动Push推送消息告诉卖家,当卖家已经发货时,我们通过移动Push消息告诉买家,让买卖双方及时掌握二手商品交易的实时订单动态。 为什么需要移动Push推送? 移动互联网络环境下,经常会出现弱网环境,特别是2G、3G等网络环境下,网络不够稳定,App客户端和相应服务器端的长连接已经断开,消息无法触达App客户端。而我们业务需要把Message(转转App交易消息等)、Operation(转转App运营活动等)、Alert(转转红包未消费提醒等)等消息推送给App客户端,从而触发用户看到这些消息,通过点击这些Push消息达到相应目标。 推送原理和方案对比 移动Push推送主要有以下三种实现方式。 移动App轮询方式(PULL) App客户端定期发起Push消息查询请求

iOS 消息推送原理及实现Demo

那年仲夏 提交于 2019-12-17 17:56:31
本文转载至 http://www.cnblogs.com/cdts_change/p/3240893.html 一、消息推送原理: 在实现消息推送之前先提及几个于推送相关概念,如下图 1-1 : 1、 Provider :就是为指定 IOS 设备应用程序提供 Push 的服务器,(如果 IOS 设备的应用程序是客户端的话,那么 Provider 可以理解为服务端 [ 消息的发起者 ] ); 2、 APNS : Apple Push Notification Service[ 苹果消息推送服务器 ] ; 3、 iPhone :用来接收 APNS 下发下来的消息; 4、 Client App : IOS 设备上的应用程序,用来接收 iphone 传递 APNS 下发的消息到制定的一个客户端 app[ 消息的最终响应者 ] ; 上图可以分为三个阶段: 阶段一: Provider[ 服务端 ] 把要发送的消息,目的 IOS 设备标识打包,发送给 APNS ; 阶段二: APNS 在自身的已注册 Push 服务的 IOS 设备列表中,查找有相应标识的 IOS 设备,并将消息发送到 IOS 设备; 阶段三: IOS 设备把发送的消息传递给对应的应用程序,并且按照设定弹出 Push 通知。 具体过程,如下图 1-2 : 1、 [Client App] 注册消息推送; 2、 [Client App

IOS推送详解

一世执手 提交于 2019-12-10 14:20:41
IOS推送详解 一.关于推送通知 推送通知,也被叫做远程通知,是在iOS 3.0以后被引入的功能。是当程序没有启动或不在前台运行时,告诉用户有新消息的一种途径,是从外部服务器发送到应用程序上的。一般说来,当要显示消息或下载数据的时候,通知是由远程服务器(程序的提供者)发送,然后通过苹果的推送通知服务(Apple Push Notification Service,简称apns)推送到设备的程序上。 推送的新消息可能是一条信息、一项即将到期的日程或是一份远程服务器上的新数据。在系统上展现的时候,可以显示警告信息或在程序icon上显示数字,同时,也可以播放警告音。一旦用户注意到程序有新的信息、时间或是数据,他们可以运行程序并访问新的内容。也可以选择忽略通知,这时程序将不会被激活。 iPhone, iPad和iPod touch上同一时刻只有一个app在前台运行。大多数程序在后台运行的时候,可以对某些用户感兴趣的内容做出回应(定时、或数据等)。推送通知能让程序在这些事件发生的时候通知用户。 作为提供者为程序开发和部署推送通知,必须通过iOS Developer Program Portal获得SSL证书。每个证书限用于一个程序,使用程序的bundle ID作为标识。证书有两种用途的:一种是针对sandbox(用于开发和测试),另外一种针对发布产品

Xcode8下快速集成极光推送并兼顾iOS10

北战南征 提交于 2019-12-03 16:42:06
前言 iOS10下,远程推送发生了变化,新增的 UserNotifications.framework 将本地推送和远程推送整合在一起。 最近刚刚更新了Xcode8,自动创建证书和配置文件确实方便许多。琰君分享下以开发环境为例(非生产环境)在Xcode8下,快速集成极光推送并兼顾iOS10。 注意:极光推送的远程推送是免费的,但相应的用户统计,终端统计等功能是不免费。如果你需要用户统计,终端统计这些功能意味着需要付费才能使用。 参考链接 开发证书配置 APNs 推送原理及问题 iOS 推送全解析,你不可不知的所有 Tips! 接下来假设你都了解证书相关的,推送的一些概念和极光推送的知识。那么相信你应该知道需要一台iOS设备和一个苹果开发者帐号才能去体验远程推送。如果你清楚远程推送的原理,那可以直接从以下第2步开始。 集成步骤 远程推送原理 Xcode8创建项目,配置自动创建 App ID / 证书 / 配置文件 创建APNs 推送证书 在极光推送后台创建应用,并上传APNs 推送证书 项目中集成极光推送SDK 获取 APNs(通知) 推送内容 极光推送后台发送远程推送测试 1. 远程推送原理 当iOS设备联网的情况下,苹果服务器和iOS设备建立了一个长链接,即便应用处于挂起和后台的状态,苹果可以给iOS设备中的应用发送通知。 远程推送原理 概念 iOS:iOS设备 APNS

ios 推送消息 php推送

China☆狼群 提交于 2019-11-29 02:29:39
今天花了好几个小时做这个推送,前几次一直是失败,没有做对,网上看过很多教程,有几个地方要值得注意。 这篇blog写得比较清楚: http://zxs19861202.iteye.com/blog/1532460 http://www.mobiledevor.com/post/100.html 1. deviceToken 是从ios 中得到 - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)pToken { NSLog(@"regisger success:%@", pToken); //注册成功,将deviceToken保存到应用服务器数据库中 } 2. 步骤 1. 登录 iPhone Developer Connection Portal(http://developer.apple.com/iphone/manage/overview/index.action ) 然后点击 App IDs 2. 创建一个 Apple ID 。通配符 ID 不能用于推送通知服务。如, com.itotem.iphone 3. 点击Apple ID旁的“Configure”,根据“向导” 的步骤生成一个签名上传,然后下载生成的许可证

ios 推送消息 php推送

无人久伴 提交于 2019-11-26 18:59:23
今天花了好几个小时做这个推送,前几次一直是失败,没有做对,网上看过很多教程,有几个地方要值得注意。 这篇blog写得比较清楚: http://zxs19861202.iteye.com/blog/1532460 http://www.mobiledevor.com/post/100.html 1. deviceToken 是从ios 中得到 - ( void )application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData * )pToken { NSLog( @" regisger success:%@ " , pToken); // 注册成功,将deviceToken保存到应用服务器数据库中 } 2. 步骤 1. 登录 iPhone Developer Connection Portal(http://developer.apple.com/iphone/manage/overview/index.action ) 然后点击 App IDs 2. 创建一个 Apple ID 。通配符 ID 不能用于推送通知服务。如, com.itotem.iphone 3. 点击Apple ID旁的“Configure”,根据“向导” 的步骤生成一个签名上传