资源预览内容
第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
第9页 / 共11页
第10页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
远程消息推送,什么是远程消息推送,APNs : Apple Push Notification server 苹果推送通知服务 苹果的APNs允许设备和苹果的推送通知服务器保持连接,支持开发者推送消息给用户设备对应的应用程序。,常见用途,常常用于消息的订阅 1、电商:我有新品发布啦! 我的某某产品在搞活动,五折优惠! 2、新闻媒体:今天又有新鲜事发生了! 3、社交:某某给你留言了! 某某对你的文章发表评论了!,实现消息推送的步骤,1、注册:为应用程序申请消息推送服务。此时你的设备会向APNs服务器发送注册请求。 2、APNs服务器接收请求,并将deviceToken返给你设备上的应用程序 3、客户端应用程序将deviceToken发送给后台服务器程序,后台接收并储存。 4、后台服务器向APNs服务器发送推送消息 5、APNs服务器将消息发给deviceToken对应设备上的应用程序,消息推送原理,UIApplication与UIApplicationDelegate,UIApplication的核心作用是提供IOS程序运行期间的控制和协作工作。 UIApplication的实例会被赋予一个代理对象(UIApplicationDelegate),以处理应用程序的生命周期事件,系统事件。,远程消息注册,/注册远程消息推送 application registerForRemoteNotificationTypes: UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound;,iOS8 注册推送,application registerUserNotificationSettings:UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge) categories:nil; application registerForRemoteNotifications;,注册成功,-(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken; 1、注册成功会弹出提示框征求用户的同意 2、当用户选择允许之后会在这个方法里取得设备的deviceToken,然后发送给服务器 3、测试环境与发布环境所连接的服务器地址是不同的,所获取到的deviceToken值也是不同的。deviceToken与应用无关。,注册失败,(void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error; 失败原因: 1、当用户选择不允许的时候会执行此方法 2、当使用模拟器的时候会执行此方法 3、证书问题,收到远程消息,(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo; 想要收到推送消息,就必须要有后台服务器向APNs服务器发请求。 1、公司自己开发后台服务器程序 2、采用第三方的后台服务程序,比如:百度云推送,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号