【读书笔记】iOS-发布你的促销消息-推动通知
推送通知可以在应用没有启动或者在后台运行的时候给用户一些提示。因此,很多应用开发者和公司用它来推销自己的产品。通过这个渠道推送自己的产品是不错的选择,但是一定要遵守起码的道德规范(不要在用户睡觉的时候推送你的通知),否则用户就会毫不留情地屏蔽你这个应用的通知,甚至卸载你的应用。
一,苹果究竟有多少个“通知”。
事实上,在苹果的Mac OS X和iOS开发的API中有3个不同的“通知”,包括:广播通知,本地通知和推送通知。其中的推送通知与远程通知是一个概念。
二,广播通知。
广播通知就是观察查模式中的通信机制,能够解决的问题是,可以实现在相同进程中实现一个对象对多个对象的通信,它在异步调用返回结果给多个对象时使用非常广泛。
三,本地通知。
本地通知能能使用在iOS设备中,它可以立刻发出通知,也可以在计划时间后发出。
四,推送通知。
推动通知也叫远程通知,推送通知不仅可以应用于iOS设备,还可以应用于Mac OS X10.7版本以后的苹果电脑,应用场景是,我们想远程地推送用户一些短信通知,即便是应该用不在前台运行,也希望用户能够收到通知,例如:股票信息,用户安装查看股票信息应用,作为股票信息提供者可以推送股票信息给这些用户的设备。
推送通知,除了运行基理与本地通知不同,用户看到通知形式和管理都是一样的,它们都有声音提示,通知的方式也都是有横幅显示和提醒显示,而且也都放在通知管理中心里。
五,为SSL证书导出p12文件。
在编程时需要使用p12格式文件,p12用于存放个人证书的私钥,通常包含保护密码,是二进制格式。
六,iOS客户端编程。
推送通知技术在Mac OS X和iOS系统上都可以运行。iOS客户端推送通知的编程比较简单,编程的关键是获取令牌,这是从APNS返回的,然后还要把内容交给提供商。
七,推送服务端编程。
在推送具体的过程中并非直接由内容提供者,直接发送给用户设备,而是服务程序与APNS通信建立信任连接,然后把数据推送给APNS,再由APNS利用安全通道推送给用户设备。
参考资料:《iOS网络编程与云端应用-最佳实践》
【读书笔记】iOS-发布你的促销消息-推动通知的更多相关文章
- 《android开发艺术探索》读书笔记(十)--Android的消息机制
接上篇<android开发艺术探索>读书笔记(九)--四大组件 No1: 消息队列MessageQueue的内部存储结构并不是真正的队列,而是采用单链表的数据结构来存储消息列表,因为单链表 ...
- [读书笔记]iOS 7 UI设计 对比度
好久没写随笔了,最近在读<iOS 7 byTutorials>,很不错,推荐给大家. 每一个好的程序员也都是一个设计师,不懂设计的程序员不是好的CTO.哈哈,开个小玩笑. iOS 7设计的 ...
- 【mq读书笔记】如何保证三个消息文件的最终一致性。
考虑转发任务未成功执行,此时消息服务器Broker宕机,导致commitlog,consumeQueue,IndexFile文件数据不一致. commitlog,consumeQueue遍历每一条消息 ...
- 读书笔记-iOS核心动画高级技巧
如果不使用+imageNamed:,那么把整张图片绘制到CGContext可能是最佳的方式了. 这里我们利用了CALayer的KVC来存储和检索任意的值,将图层和索引打标签. 使用KVC打标签
- 《android开发艺术探索》读书笔记(十一)--Android的线程和线程池
接上篇<android开发艺术探索>读书笔记(十)--Android的消息机制 No1: 在Android中可以扮演线程角色的有很多,比如AsyncTask.IntentService.H ...
- 使用PushSharp进行IOS发布应用的消息推送
在做.NET向IOS设备的App进行消息推送时候,采用的是PushSharp开源类库进行消息的推送,而在开发过程中,采用的是测试版本的app,使用的是测试的p12证书采用的是ApnsConfigura ...
- HDFS Federation (读书笔记)
HDFS Federation (读书笔记) HDFS的架构 HDFS包含两个层次:命名空间管理(Namespace) 和 块/存储管理(Block Storage). 命名空间管理(Namespac ...
- TJI读书笔记09-访问控制权限
TJI读书笔记09-访问控制权限 包,package和import 权限修饰符 接口和实现 类的访问权限控制 首先问一个问题,为什么要有访问控制权限? 安全,这当然是一个很重要的原因. 让类库的使用者 ...
- 读书笔记——《图解TCP/IP》(1/4)
读书笔记——<图解TCP/IP>(1/4) 经典摘抄 第一章 网络基础知识 1.独立模式:计算机未连接到网络,各自独立使用的方式. 2.广域网 WAN 局域网 LAN 城域网 MAN 3. ...
随机推荐
- Python如何判断字符串中是否有中文
解决:Python如何判断字符串中是否有中文 In [240]: s Out[240]: '你好aa' In [241]: for i in s: ...: if u'\u4e00' <= i ...
- Vue, React, AngularJS, and Angular2. 我们对流行JavaScript框架们的选择
2017-08-04 前端大全 (点击上方公众号,可快速关注) 英文:ANTONI ZOLCIAK 译文:众成翻译 www.zcfy.cc/article/vue-react-angularjs-a ...
- POJ 2845
#include <iostream> #include <string> #include <algorithm> #define MAXN 350 using ...
- Window 上安装Node.js
Window 上安装Node.js 1.Windows安装包下载地址 https://nodejs.org/en/ 2.下载好后,按照默认设置即可,安装路径可以更改 3.安装好后,检测PATH环境变量 ...
- the fist blood of java-eclipse 哈哈哈哈 封装的运用
class Student { private int id; public String name; public String sex; private int score ...
- PHP使用APC获取上传文件进度
今天发现使用PHP的APC也能获取上传文件的进度.这篇文章就说下如何做. 安装APC 首先安装APC的方法和其他PHP模块的方法没什么两样,网上能找出好多 phpinfo可以看到APC的默认配置有: ...
- Google Optimization Tools介绍
Google Optimization Tools(OR-Tools)是一款专门快速而便携地解决组合优化问题的套件.它包含了: 约束编程求解器. 简单而统一的接口,用于多种线性规划和混合整数规划求解, ...
- 26、redis中默认有多少个哈希槽?
Redis 集群中内置了 16384 个哈希槽,当需要在 Redis 集群中放置一个 key-value时,redis 先对 key 使用 crc16 算法算出一个结果,然后把结果对 16384 求余 ...
- Linux MBR扇区误删恢复
目录 1. 引导记录误删恢复 1.1 备份引导记录 1.2 误删引导记录 1.3 恢复引导记录 2. 分区表误删恢复 2.1 备份分区表 2.2 误删分区表 2.3 恢复分区表 如果MBR分区表没了, ...
- POJ1065 Wooden Sticks(贪心+动态规划——单调递减或递增序列)
描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间,如果第i+1个木棒的重量和长度都大于等于 第i个处理的木棒,那么将不会耗费时间,否则 ...