免费iOS第三方推送工具Urban Airship使用教程
Urban Airship公司是位于俄勒冈州波特兰地区的一家“推送”功能提供商。每月的推送数量达到5.2亿次,平均每分钟的信息发送量约为1.3万次。
开始教你怎么用Urban Airship快速进行推送,省去自己搭建服务器又省事的好方法。
先进入网站,https://www.urbanairship.com/ 第一步,注册一个自己的帐号是必须的。关于帐号类型,对于推送量不大的应用来说,免费的足矣。(降低开发成本)
注册好了免费帐号之后要做的就是添加自己的应用了。如下图,填好各项信息。
这里需要提一下的是,1. Application Mode,分为Development和Production。分别是测试用和正式的产品。建议分别建立两个应用一个测试用,一个做正式推送。
2. 需要把下面的“Push Notifications Surpport”选项打勾才能出现页面下方的内容。
3. 再往下的“Apple push certificate”一项就是那个从证书助手里导出的p12文件,当然也分为Development和Production的,需要注意。
这里还可以为BlackBerry和Android系统的应用添加推送,具体就不细说了。在一切信息填写OK之后点击页面最下方的【create your application】按钮,完成应用的添加。
下面需要在你的应用里加入一些代码,来让IOS设备在打开应用的时候发送自己的device token到Urban Airship的服务器中,告诉他们可以向你的手机发送推送信息。
打开你的APP工程文件,找到XXXAppDelegate.m文件,在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中添加如下代码:
1 2 3 4 |
[application registerForRemoteNotificationTypes:
UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound]; |
这段代码会在用户第一次安装应用的时候告知用户是否要接受推送。
之后再在这个文件中加入如下代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
- (void)application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { // Convert the token to a hex string and make sure it's all caps NSMutableString *tokenString = [NSMutableString stringWithString:[[deviceToken description] uppercaseString]]; [tokenString replaceOccurrencesOfString:@"<" withString:@"" options:0 range:NSMakeRange(0, tokenString.length)]; [tokenString replaceOccurrencesOfString:@">" withString:@"" options:0 range:NSMakeRange(0, tokenString.length)]; [tokenString replaceOccurrencesOfString:@" " withString:@"" options:0 range:NSMakeRange(0, tokenString.length)]; NSLog(@"Token: %@", tokenString); // Create the NSURL for the request NSString *urlFormat = @"https://go.urbanairship.com/api/device_tokens/%@"; NSURL *registrationURL = [NSURL URLWithString:[NSString stringWithFormat: urlFormat, tokenString]]; // Create the registration request NSMutableURLRequest *registrationRequest = [[NSMutableURLRequest alloc] initWithURL:registrationURL]; [registrationRequest setHTTPMethod:@"PUT"]; // And fire it off NSURLConnection *connection = [NSURLConnection connectionWithRequest:registrationRequest delegate:self]; [connection start]; // TODO: Pass the token to our server NSLog(@"We successfully registered for push notifications"); } - (void)connection:(NSURLConnection *)connection |
最后这段代码中所需的Application Key和Application Secret会在你刚才创建的Urban Airship网站的应用Detail页面找到,如图:
之后就可以运行编译软件了。成功的话会在output窗口显示We successfully registered for push notifications和Device token。
现在再回到Urban Airship的页面。刷新一下,看看Details页面中的Device tokens一项是不是变成了1.如果是的话,表示你的手机已经成功在服务器上注册了。
点击页面左边工具栏中的PUSH项,试试发送一条推送信息
Test Push Notifications的意思是通过指定的Device token推送信息,如图:
点击Send it!成功了有木有!
其它功能都很直观,自己研究下吧。
最后有一点,就是在进行production推送的时候需要输入信用卡号,不用紧张,只要每月推送量小于一百万条的时候是不会扣费的,呵呵。
感谢Let the right one in的分享!
免费iOS第三方推送工具Urban Airship使用教程的更多相关文章
- iOS第三方推送-极光推送
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...
- 第三方Push服务:Urban Airship
转自:http://blog.csdn.net/kmyhy/article/details/7355756 关于推送通知,除了苹果的APNs之外,我们还有其它选择. Urban Airship就是其中 ...
- iOS远程推送原理及实现过程
➠更多技术干货请戳:听云博客 推送通知,是现在的应用必不可少的功能.那么在 iOS 中,我们是如何实现远程推送的呢?iOS 的远程推送原理又是什么呢?在做 iOS 远程推送时,我们会遇到各种各样的问题 ...
- iOS 10 推送全解析,注意事项
本文旨在对 iOS 推送进行一个完整的剖析,如果你之前对推送一无所知,那么在你认真地阅读了全文后必将变成一个推送老手,你将会对其中的各种细节和原理有充分的理解.以下是 pikacode 使用 iOS ...
- 了解iOS消息推送一文就够:史上最全iOS Push技术详解
本文作者:陈裕发, 腾讯系统测试工程师,由腾讯WeTest整理发表. 1.引言 开发iOS系统中的Push推送,通常有以下3种情况: 1)在线Push:比如QQ.微信等IM界面处于前台时,聊天消息和指 ...
- iOS apns推送
前言:推送分为本地推送以及远程推送. 两者的区别为本地推送一般为定时推送.定期推送或者位置推送.而远程推送更为多样化,能满足较高的要求.当然远程推送需要服务器端开发,开发流程较复杂. 1.本地推送只需 ...
- android推送-PHP(第三方推送:个推)
在项目初期,就安卓推送功能怎么做,曾经参考过例如XMPP之类的推送方法.但苦于那些是些英文档案,又没太多时间研究,所以打算采用第三方推送(个推,极光推送等),后来在美图技术老大推荐下用采用个推. PS ...
- APNS IOS 消息推送
一.Apns简介: Apns是苹果推送通知服务. 二.原理: APNs会对用户进行物理连接认证,和设备令牌认证(简言之就是苹果的服务器检查设备里的证书以确定其为苹果设备):然后,将服务器的信息接收并且 ...
- .net平台借助第三方推送服务在推送Android消息(极光推送)
最近做的.net项目(Windows Service)需要向Android手机发送推送消息,真是有点困难,没有搞过就不停的搜文档,最后看到了一个开源项目PushSharp,可以在.net平台推送IOS ...
随机推荐
- Unix 网络编程 dup和dup2函数
dup和dup2也是两个很实用的调用,它们的作用都是用来复制一个文件的描写叙述符. 它们经经常使用来重定向进程的stdin.stdout和stderr.这两个函数的原形例如以下: #include & ...
- Sqlldr导入txt文件内容到数据库中
需求:数据迁移,将txt文件中的内容导入oracle数据库的表中,文本文件中数据格式如下(数据以空格隔开) 1. 创建与文本数据格式相匹配的表(此处在scott用户下创建) create table ...
- HTML5&CSS3初学者指南
介绍 网络时代已经到来.现在对人们来说,每天上网冲浪已经成为一种最为常见的行为. 一个典型的网页是由文本.图像和链接组成的.除去内容上的差异,不同网站的网页也具有不同的外观和感受,以实现在网络上建立自 ...
- C# 共享内存(转)
以下是一个C#操作内存的一个类,只要将下面的类添加到相应的项目中,该项目就可以对内存进行直接操作! using System.Runtime.InteropServices; //添加如下命名空 ...
- VSCode开发工具下载
VSCode集成多语言和插件,方便开发和代码管理. 请到此处下载:https://code.visualstudio.com/Download
- C#指南,重温基础,展望远方!(2)程序结构
C# 中的关键组织结构概念包括程序.命名空间.类型.成员和程序集. C# 程序由一个或多个源文件组成. 程序声明类型,而类型则包含成员,并被整理到命名空间中. 类型示例包括类和接口. 成员示例包括字段 ...
- weblogic stuck实验2014-11-14
以往对weblogic stuck认识是: 1.会造成系统总体慢. 2.在weblogic console中线程监控中会有显示. 3.weblogic使用队列处理线程.隔一段时间会扫描线程队 ...
- CSS/JQuery元素选择器之&&和||,选择器的逻辑操作
使用CSS或JQuery选中元素的时候.非常多时候我们须要对条件进行&&或者||操作. JQuery或者CSS中的||操作是非经常常使用的.也非常easy,就是通过逗号来分隔的. se ...
- word2vector 理解入门
1.什么是word2vector? 我们先来看一个问题,假如有一个句子 " the dog bark at the mailman". 假如用向量来表示每个单词,我们最先想到的是用 ...
- ss - float浮动模块的高度问题 解决方案
当一个Div中的子元素都是浮动元素时,该div是没有高度的.通常会带来很多困扰,解决方案如下: 低版本统配兼容: overflow: hidden; 下面是不支持低配浏览器,而且似乎该效果对 P 标签 ...