iOS开发 远程推送

轻松搞定iOS远程消息推送 一、引言 IOS中消息的推送有两种方式,分别是本地推送和远程推送,本地推送在//www.jb51.net/article/93602.htm这篇博客中有详细的介绍,这里主要讨论远程推送的流程与配置过程。 二、远程推送机制的原理 1、从一张很火的图说起 搜索IOS远程推送,你总能看到一张如下的流程示意图,因为这张图确实很火,所以我也将它引用在此: 这张图示意的很清晰,大致意思是这样:你的应用服务端将消息发送到apple的APNS服务器,APNS服务器将消息推送到指定的Iphone,最后由Iphone负责将消息推送至你的APP。在此先不说这个过程是如何实现的,仅仅看这个流程,你可能会觉得,在你 立即下载

远程推送通知

什么是远程推送通知

顾名思义,就是从远程服务器推送给客户端的通知(需要联网)远程推送服务,又称为APNs(Apple Push Notification Services)

为什么需要远程推送通知

  • 传统获取数据的局限性 只要用户关闭了app,就无法跟app的服务器沟通,无法从服务器上获得最新的数据内容
  • 远程推送通知可以解决以上问题 不管用户打开还是关闭app,只要联网了,都能接收到服务器推送的远程通知

远程推送通知使用须知

  • 所有的苹果设备,在联网状态下,都会与苹果的服务器建立长连接 什么是长连接 只要联网了,就一直建立连接
  • 长连接的作用 时间校准 系统升级 查找我的iPhone .. ...
  • 长连接的好处 数据传输速度快 数据保持最新状态

推送原理

Provider就是我们公司的服务器,经过苹果的APNs服务器找到我们的设备,给我们设备上的客户端应用推送消息。那APNs服务器是如何找到我们的设备和设备上的应用呢,答案就是DeviceToken,DeviceToken需要配置推送证书才可以获得,推送证书需要知道我们的APP ID(应用的BundleID,应用唯一标识)和UDID(设备唯一标识),还有自己服务器的UDID,我们先来打一个推送证书,登录开发者中心,点击证书模块

点击iOS Apps的证书

进入这样的界面

点击App IDs,然后点右上角的加号

箭头所指为应用ID描述,我们假设写了一个很牛逼的应用,ExcitedApp,接下来我们填入App ID,注意这里的App ID是固定的,不能有星号

接下来我们添加App所需要的服务,然后点击Continue

一直点击下一步,完成,在App IDs 列表里面找到我们的ExcitedApp,我们看到

发现Push服务是黄色警告,这时点击Edit,找到推送模块,我们需要配置推送证书了,点击红色箭头所指的位置

我们需要一个CSR文件,CSR是一个签名请求文件,意思就是让我们的MAC具有调试推送的权限,点击继续

点击了继续我们看到

然后我们打开Mac上的钥匙串,从证书颁发机构请求证书

前两个随便写,最后选择存到磁盘

完成之后,接下来我们就可以添加CSR文件了

添加完,选择生成

证书配好了,下载下来

 

配好了!

顺带着我们把发布的证书也给配了,步骤都一样

打开我们刚刚下载的证书,添加到钥匙串中

终于能开始整我们的项目了,快哭了都

 

不要忘记修改bundle id 这里还要搞一个真机调试的证书才可以

真机调试的东西这里不累述,搞了这么多东西,我们终于可以拿到DeviceToken了

在AppDelegate.m中注册推送

复制代码
1 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
2     
3     UIUserNotificationType types = UIUserNotificationTypeBadge                                                                                                                      | UIUserNotificationTypeSound | UIUserNotificationTypeAlert ;
4     
5     UIUserNotificationSettings * setting =  [UIUserNotificationSettings settingsForTypes:types categories:nil];
6     [[UIApplication sharedApplication] registerUserNotificationSettings:setting];
7 
8     return YES;
9 }
复制代码
1 -(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
2 {
3     NSLog(@"%@",deviceToken);
4 }

 

DeviceToken处理流程

 

接下来我们用PushMebaby来测试一下我们的推送:https://github.com/stefanhafeneger/PushMeBaby/

将我们的推送证书添加到项目目录

 

 

接下来手机上就可以收到推送了。

来源于:http://www.cnblogs.com/dongwenbo/p/4288165.html

iOS实现远程推送原理及过程 主要为大家详细介绍了iOS实现远程推送原理及具体过程,图文结合的方式针对iOS远程推送进行分析,感兴趣的小伙伴们可以参考一下 立即下载

相关推荐

T-Box功能详解及应用

T - BOX,其全称为 Telematics Box,作为远程 / 车载通信模块,是一款集车身网络与无线通讯功能于一体的智能终端设备。它充当了多媒体车机与 TSP(汽车远程服务提供商)以及互联网之间的无线路由器角色,为用户创造了远程访问的可能。用户借助T - BOX能够对车辆配备的各个 ECU(电子控制单元)进行远程操控,包括远程启动或停止发动机开启或关闭空调天窗后备箱门车门,以及实现闪灯鸣笛等功能。

wgl110110的博客 5642

iOS开发之远程推送Push

远程推送通知 什么是远程推送通知 顾名思义,就是从远程服务器推送给客户端的通知(需要联网)远程推送服务,又称为APNs(Apple Push Notification Services) 为什么需要远程推送通知 传统获取数据的局限性只要用户关闭了app,就无法跟app的服务器沟通,无法从服务器上获得最新的数据内容 远程推送通知可以解决以上问题不管用户打开还是关闭app,只要联网了...

weixin_30609331的博客 261

Linux系统杀毒软件深度评测:8款主流工具对比(2025最新版)

本文针对Linux服务器/桌面环境,实测8款杀毒软件,涵盖开源免费、企业级防护、轻量级工具等类型,附保姆级安装教程和避坑指南,新手也能5分钟选对工具!

awei0916的专栏 1万+

ios swift开发--ios远程推送通知配置

远程推送通知(Remote Push Notifications)的主要作用是让开发者能够从服务器向用户的设备发送消息,即使应用不在前台运行或甚至被关闭。你需要一个服务器来发送推送通知。个人开发者账号是免费的,但如果你想发布应用到 App Store,需要支付 99 美元/年的费用。远程推送通知是一种强大的工具,可以帮助开发者与用户保持实时互动,提高应用的活跃度和用户体验。用户 A 向用户 B 发送了一条消息,服务器检测到新消息后,向用户 B 的设备发送推送通知,提醒用户 B 有新消息。

2920

基于YOLOv5与海康工业相机的高分辨率实时检测实践

本文详细介绍了基于YOLOv5与海康工业相机的高分辨率实时检测实践,通过优化相机配置、网络传输和YOLOv5模型适配,实现了每秒15帧以上的实时检测性能,缺陷识别准确率高达99.2%。特别适用于电子元件焊接点检测、精密齿轮齿痕检查等对微小缺陷敏感的场景。

weixin_30872499的博客 474

软件工程实验报告--用Visio绘制数据流图、ER图、状态图、软件结构图、程序流程图、系统流程图

用Visio绘制数据流图、ER图、状态图、软件结构图、程序流程图、系统流程图

m0_73814332的博客 4162

iOS推送通知

推送通知,也被叫做远程通知,是在iOS 3.0以后被引入的功能。是当程序没有启动或不在前台运行时,告诉用户有新消息的一种途径,是从外部服务器发送到应用程序上的。一般说来,当要显示消息或下载数据的时候,通知是由远程服务器(程序的提供者)发送,然后通过苹果的推送通知服务(Apple Push Notification Service,简称APNS)推送到设备的程序上。直接由应用程序(程序中写入对应代码)给用户发出通知本地通知需要用到一个重要的类:本地通知的实现步骤:(1)创建本地通知。

旭日的博客 4285

开发simulink 以及stm32半物理仿真碰到的问题,以及处理方法,Error:External Mode Open Protocol Connect command failed(实测有用)

串口实现的,但是在测试的时候发现,这个串口可以正常发送和接收数据,但是一旦把这个串口只让其进行版物理仿真就报错。直接刷写程序是可以的,最后查到问题了。我要实现半物理仿真,就是通过matlab实现可以直接控制stm32板子,实际上是通过xcp on。然后点击simulink上的观测按钮就可以直接和stm32平台进行通讯了。3,还是使用串口3,但是重新需要设置一下com口,因为重新插拔了一下,按照这个设置方法就可以。2,重新加载ioc文件。

pvmsmfchcs的博客 1500

iOS远程推送

远程推送应用配置过程 一. 创建支持远程推送功能的App ID 添加App ID 设置Bundle ID,不能设置通配ID 勾选远程通知选项,可以在配置App ID的时候勾选,也可以在原有App ID的基础上进行更改。 勾选远程通知选项 勾选远程通知选项 二. 申请开发者证书,并选中刚刚创建的App ID 创建远程推送证书 创建推送

We’re here to put a dent in the universe. 1890

YOLO11涨点优化:原创自研 | 魔改Bottleneck,具备多尺度和特征通道融合的结构

可以将C3k2_MSAMCS放在neck,或者backbone和neck同时修改,具体看自己数据集的涨点情况决定

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 1651

一分钟理解 “熔断“, “限流“ 与 “降级“

熔断,本质是一种“故障隔离”机制,用于当某个依赖服务出现持续故障(如响应超时、错误率飙升)时,暂时切断对该服务的调用,避免故障扩散到整个系统,防止“雪崩效应”;待依赖服务恢复正常后,再逐步恢复调用。其核心逻辑参考了现实中的“电路保险丝”——电路过载时,保险丝熔断,切断电路,保护电器不被烧毁;故障排除后,更换保险丝,电路恢复正常。闭合状态(Closed):正常状态,请求可以正常调用依赖服务,同时监控调用的错误率、超时率等指标。打开状态(Open)

h a 6 6 6 c k 为 你解决复杂难题! 1476

iOS 远程推送通知

远程推送通知含义 获取deviceToken过程 远程通知的模拟过程 远程通知的所需要配置的证书 远程通知的代码实现 公司后台配合所需要资料 1. 远程推送通知含义 1. 顾名思义,就是从远程服务器推送给客户端的通知(需要联网). 2. 远程推送服务,又称为APNs(Apple Push Notification .Services) 2. 获取deviceToken过程

高级软件开发工程师--周玉的博客 914

Qt Installer Framework 简单使用

qt installer framework 简单使用

qq_42815643的博客 2576

iOS开发——远程消息推送的实现

在我们使用App的过程中,总是会收到很多的消息推送,今天我们就要来实现这个功能。首先消息推送分为本地消息推送和远程消息推送,而其中又以远程消息最为常用。但是在推送远程消息之前,有两个前提条件,你需要购买苹果的开发者账号,也就是每年99刀;并且有一台iOS真机(模拟器不能测试推送)。其实远程推送需要有服务器,但是我们自己暂时没有服务器,到时候后台使用Parse进行推送。实现步骤如下: (1)进入苹

乞力马扎罗的雪CYF的博客 3339

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

iOS开发之远程推送

说到远程推送,应该用的也挺多的,今天就基于SEA的云推送服务,做一个推送的小demo,来了解一下iOS中的远程推送是怎么一回事儿,首先你得有苹果的开发者账号,好咸蛋也差不多了,主要内容走起。   一、准备阶段     1.在苹果开发官网上申请推送证书之前需要一个名字叫做certSigningRequest文件。该文件在MAC系统中生成,用于在Apple网站上申请推送证书文件,下面是利用

风的坚持 551

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

[转载]IOS开发之----远程推送通知

[转载]IOS开发之----远程推送通知 (2013-02-01 15:56:06) 转载▼ 标签: 转载   原文地址:IOS开发之----远程推送通知作者:倒計時 玩了一年的iPhone了各种App的远程通知接收了不少,每次接收到的时候,就在反思,这丫的怎么实现的!  由于工作方面一直没有接触的机会,所以只好自己主

iamfreedom2011的专栏 1146

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

IOS开发之远程推送

1.实现原理 远程推送的原理:     图中Provider是指ios程序的服务器,APNS是指苹果服务器。上图的流程是这样的,第一,应用程序的服务器把要发送的消息,目的iphone的标识打包,发给APNS;第二,APNS在自身的已注册Push服务的iphone列表中,查找有相应标示符的iphone,并把消息发到iphone;第三,iphone把发来的消息传递给相应的应用程序,并且按照设定弹出...

weixin_30872337的博客 196

iOS开发消息推送机制——远程推送。

远程推送

FY_Fish的专栏 875

iOS开发远程推送

iOS开发远程推送 推送通知要求: 1、先申请申请app IDs 2、然后测试证书和生产证书各一个。 转载于:https://www.cnblogs.com/AlienY/p/4548485.html...

bahucuo0767的博客 161
上一篇: Git 托管代码
下一篇: 封装自己的控件库:iPhone静态库的应用
lsh0902
博客等级 码龄16年 8粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值