文档章节

iOS 推送 获取手机设备的 deviceToken

1054949000
 1054949000
发布于 2014/10/14 17:32
字数 251
阅读 30046
收藏 8


第一步:申请证书:




第二步:申请app ids,应用名字必须一致。然后再进入进行编辑,使其enable,绿灯。




第三步:申请provisioning profile,生成.mobileprovision,双击该证书才能正确导入手机设备,不能拖。





第四步:创建应用,使其名字一致。



第五步:写代码


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

    // Override point for customization after application launch.

//    return YES;

    UIRemoteNotificationType types =

    (UIRemoteNotificationTypeBadge

     |UIRemoteNotificationTypeSound

     |UIRemoteNotificationTypeAlert);

    

    //注册消息推送

    [[UIApplication sharedApplication]registerForRemoteNotificationTypes:types];

    return YES;

    

}


//获取DeviceToken成功

- (void)application:(UIApplication *)application

didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken

{

    NSLog(@"DeviceToken: {%@}",deviceToken);

    //这里进行的操作,是将Device Token发送到服务端

    

    UIAlertView * alert = [[UIAlertView alloc]initWithTitle:nil message:[NSString stringWithFormat:@"DeviceToken:%@",deviceToken] delegate:self cancelButtonTitle:nil otherButtonTitles:@"确定", nil];

    [alert show];

}


//注册消息推送失败

- (void)application:(UIApplication *)application

didFailToRegisterForRemoteNotificationsWithError:(NSError *)error

{

    NSLog(@"Register Remote Notifications error:{%@}",error);

    //    NSLog(@"Register Remote Notifications error:{%@}",error.localizedDescription);

}


//处理收到的消息推送

- (void)application:(UIApplication *)application

didReceiveRemoteNotification:(NSDictionary *)userInfo

{

    NSLog(@"Receive remote notification : %@",userInfo);

    UIAlertView *alert =

    [[UIAlertView alloc] initWithTitle:@"温馨提示"

                               message:@"推送成功!"

                              delegate:nil

                     cancelButtonTitle:@"确定"

                     otherButtonTitles:nil];

    [alert show];

}



本文转载自:http://blog.csdn.net/a1054949000/article/details/31383195

共有 人打赏支持
1054949000
粉丝 6
博文 38
码字总数 914
作品 0
青浦
加载中

评论(2)

1054949000
1054949000

引用来自“鸣泽晨”的评论

registerForRemoteNotificationTypes: is not supported in iOS 8.0 and later.
当初还没有iOS 8,所以不知道兼容性,好久没弄了,呵呵。
鸣泽晨
鸣泽晨
registerForRemoteNotificationTypes: is not supported in iOS 8.0 and later.
最清晰的ios消息推送机制教程

研究了一下Apple Push Notification Service,实现的很简单,很环保.原理如下 财大气粗的苹果提供了一堆服务器,每个ios设备和这些服务器保持了一个长连接,ios版本更新提示,手机时钟校准什么的都...

whj
2014/03/16
0
0
iOS 消息推送原理及实现总结

一、消息推送原理: 在实现消息推送之前先提及几个于推送相关概念,如下图: 1、 Provider:就是为指定IOS设备应用程序提供Push的服务器,(如果IOS设备的应用程序是客户端的话,那么Provide...

mahb520
2013/05/08
0
1
react-native 使用leanclound消息推送

iOS消息推送的基本流程 1.注册:为应用程序申请消息推送服务。此时你的设备会向APNs服务器发送注册请求。2. APNs服务器接受请求,并将deviceToken返给你设备上的应用程序 3.客户端应用程序将...

ding_ios
08/05
0
0
iOS开发,推送消息 steps

概述:推送过程简介 一、App启动过程中,使用UIApplication::registerForRemoteNotificationTypes函数与苹果的APNS服务器通信,发出注册远程推送的申请。若注册成功,回调函数application:(...

召唤攻城狮
2015/03/30
0
2
fir.im Weekly - 每个程序员都应当拥有的技能树

本周收集了一些优秀的 iOS & Android 开发资源和程序员 IT 技能拓展的 Tips. 知道创宇研发技能表 v3.0 作为程序员可能都听说过【知道创宇】,他们是一家黑客文化浓厚的安全公司。这张技能表为...

风起云飞fir_im
2015/09/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

通过ajax访问远程天气预报服务

http://www.webxml.com.cn/zh_cn/index.aspx 更改wsdl文件 打开文件将15行,51行,101行去掉 然后把文件复制到c盘 然后在桌面上面就生成了文件 将文件打成jar包 package cn.it.ws.weather;...

江戸川
6分钟前
0
0
聊聊storm的tickTuple

序 本文主要研究一下storm的tickTuple 实例 TickWordCountBolt public class TickWordCountBolt extends BaseBasicBolt { private static final Logger LOGGER = LoggerFactory.getLogg......

go4it
9分钟前
0
0
自动装箱和自动拆箱

自动装箱和自动拆箱 Java 提供了 8 种基本数据类型,每种数据类型都有其对应的包装类型,包装类是面向对象的类,是一种高级的数据类型,可以进行一些比较复杂的操作,它们是引用类型而不再基...

tsmyk0715
29分钟前
1
0
简易审计系统

1、有时候我们需要对线上用户的操作进行记录,可以进行追踪,出现问题追究责任,但是linux自带的history并不会实时的记录(仅仅在内存中,当用户正常退出(exit logout )时才会记录到history文件里...

芬野de博客
34分钟前
2
0
Qt那些事0.0.6

QML中使用Image,在设置source的后,通过Qt Quick2 Preview(qmlscene)遇到了图片找不到的问题: Image { id: success_img anchors.centerIn: parent ...

Ev4n
34分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部