全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

IOS10 远程推送适配详细介绍

IOS10 远程推送适配

iOS10推送新增了UserNotifications Framework,使用起来其实很简单。

建议看看极光推送的Demo,里面写的更详细。

只是在iOS10以上系统上点击通知栏,回调方法不再走原来的这两个方法

- (void)application:(UIApplication *)application 
didReceiveRemoteNotification:(NSDictionary *)userInfo {}
- (void)application:(UIApplication *)application
 didReceiveRemoteNotification:(NSDictionary *)userInfo 
fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {}

而是在前台的时候回调

- (void)userNotificationCenter:(UNUserNotificationCenter *)center 
willPresentNotification:(UNNotification *)notification 
withCompletionHandler:(void (^)
(UNNotificationPresentationOptions))completionHandler

从后台进入的时候回调

- (void)userNotificationCenter:(UNUserNotificationCenter *)center
 didReceiveNotificationResponse:(UNNotificationResponse *)response 
withCompletionHandler:(void (^)())completionHandler

直接说怎么用吧:

1,导入头文件

#ifdef NSFoundationVersionNumber_iOS_9_x_Max
#import <UserNotifications/UserNotifications.h>
#endif

2,注册通知

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 方法中

if (iOS10) {
  UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
  center.delegate = self;
  [center requestAuthorizationWithOptions:(UNAuthorizationOptionBadge 
| UNAuthorizationOptionSound | UNAuthorizationOptionAlert) 
completionHandler:^(BOOL granted, NSError * _Nullable error) {
   if (!error) {
    NSLog(@"succeeded!");
   }
  }];
 } else if (iOS8_9){//iOS8-iOS9
  UIUserNotificationSettings *settings = [UIUserNotificationSettings 
settingsForTypes:(UIUserNotificationTypeBadge | UIUserNotificationTypeAlert 
| UIUserNotificationTypeSound) categories:nil];
  [application registerUserNotificationSettings:settings];
  [application registerForRemoteNotifications];
 } else {//iOS8以下
  [application registerForRemoteNotificationTypes: UIRemoteNotificationTypeBadge
 | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound];
 }

3,回调方法中,获取通知数据

- (void)userNotificationCenter:(UNUserNotificationCenter *)center 
didReceiveNotificationResponse:(UNNotificationResponse *)response 
withCompletionHandler:(void (^)())completionHandler {
 NSDictionary *userInfo = response.notification.request.content.userInfo;
   //消息处理
 if([request.trigger isKindOfClass:[UNPushNotificationTrigger class]]) {
  //判断为远程推送
 }else {
  // 判断为本地通知 
 }
}

4,对于本地通知没有什么变化依然会回调

-(void)application:(UIApplication *)application 
didReceiveLocalNotification:(UILocalNotification *)notification

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# IOS10  # 远程推送适配  # 远程推送适配详解  # 推送适配详细介绍  # iOS10 适配远程推送功能实现代码  # 更新了Xcode8 及 iOS10遇到的问题小结  # iOS10全新推送功能实现代码  # Xcode8以及iOS10适配等常见问题汇总(整理篇)  # iOS10开发和Xcode 8新特性及常见问题解析  # iOS10推送之基础知识(必看篇)  # IOS10 解决权限崩溃问题详解  # iOS10适配之权限Crash问题的完美解决方案  # 110.iOS10新特性适配教程XCode8新特性解析  # 解析iOS10中的极光推送消息的适配  # Xcode8、iOS10升级问题记录  # iOS10 推送最新特性研究  # 回调  # 没有什么  # 这两个  # 希望能  # 谢谢大家  # 在前  # 再走  # 其实很简单  # 头文件  # 只是在  # 新增了  # NSDictionary  # userInfo  # UNUserNotificationCenter  # completionHandler  # UIBackgroundFetchResult  # userNotificationCenter  # fetchCompletionHandler  # didReceiveNotificationResponse  # UNNotificationPresentationOptions 


相关文章: 义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  活动邀请函制作网站有哪些,活动邀请函文案?  学校为何禁止电信移动建设网站?  建站主机选购指南:核心配置优化与品牌推荐方案  如何通过虚拟主机快速搭建个人网站?  免费视频制作网站,更新又快又好的免费电影网站?  定制建站如何定义?其核心优势是什么?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  设计网站制作公司有哪些,制作网页教程?  如何快速查询域名建站关键信息?  SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?  济南企业网站制作公司,济南社保单位网上缴费步骤?  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  建站之家VIP精选网站模板与SEO优化教程整合指南  linux top下的 minerd 木马清除方法  如何用PHP快速搭建CMS系统?  如何通过FTP空间快速搭建安全高效网站?  如何快速生成ASP一键建站模板并优化安全性?  建站之星IIS配置教程:代码生成技巧与站点搭建指南  简历在线制作网站免费版,如何创建个人简历?  宁波自助建站系统如何快速打造专业企业网站?  简历在线制作网站免费,免费下载个人简历的网站是哪些?  如何在新浪SAE免费搭建个人博客?  如何彻底删除建站之星生成的Banner?  内部网站制作流程,如何建立公司内部网站?  如何通过WDCP绑定主域名及创建子域名站点?  建站之星24小时客服电话如何获取?  高防服务器租用首荐平台,企业级优惠套餐快速部署  建站之星价格显示格式升级,你的预算足够吗?  建站主机选哪家性价比最高?  如何快速上传建站程序避免常见错误?  如何选择PHP开源工具快速搭建网站?  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  高端企业智能建站程序:SEO优化与响应式模板定制开发  在线制作视频的网站有哪些,电脑如何制作视频短片?  宿州网站制作公司兴策,安徽省低保查询网站?  建站之星多图banner生成与模板自定义指南  子杰智能建站系统|零代码开发与AI生成SEO优化指南  C#如何在一个XML文件中查找并替换文本内容  兔展官网 在线制作,怎样制作微信请帖?  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  网站制作多少钱一个,建一个论坛网站大约需要多少钱?  html制作网站的步骤有哪些,iapp如何添加网页?  如何选择美橙互联多站合一建站方案?  如何通过二级域名建站提升品牌影响力?  如何在阿里云高效完成企业建站全流程?  商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。