- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
iOS开发系列通知与消息机制概要1
概述 在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知机制就可以告诉用户此时发生的事情。iOS中通知机制又叫消息机制,其包括两类:一类是本地通知;另一类是推送通知,也叫远程通知。两种通知在iOS中的表现一致,可以通过横幅或者弹出提醒两种形式告诉用户,并且点击通知可以会打开应用程序,但是实现原理却完全不同。今天就和大家一块去看一下如何在iOS中实现这两种机制,并且在文章后面会补充通知中心的内容避免初学者对两种概念的混淆。 本文包括下面内容 本地通知 推送通知 补充--iOS开发证书、秘钥 补充--通知中心 本地通知 本地通知是由本地应用触发的,它是基于时间行为的一种通知形式,例如闹钟定时、待办事项提醒,又或者一个应用在一段时候后不使用通常会提示用户使用此应用等都是本地通知。创建一个本地通知通常分为以下几个步骤: 创建UILocalNotification。 设置处理通知的时间fireDate。 配置通知的内容:通知主体、通知声音、图标数字等。 配置通知传递的自定义数据参数userInfo(这一步可选)。 调用通知,可以使用scheduleLocalNotification:按计划调度一个通知,也可以使用presentLocalNotificationNow立即调用通知。 下面就以一个程序更新后用户长期没有使用的提醒为例对本地通知做一个简单的了解。在这个过程中并没有牵扯太多的界面操作,所有的逻辑都在AppDelegate中:进入应用后如果没有注册通知,需要首先注册通知请求用户允许通知;一旦调用完注册方法,无论用户是否选择允许通知此刻都会调用应用程序的- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings代理方法,在这个方法中根据用户的选择:如果是允许通知则会按照前面的步骤创建通知并在一定时间后执行。 AppDelegate.m ////AppDelegate.m//LocalNotification////CreatedbyKenshinCuion14/03/28.//Copyright(c)2014年KenshinCui.Allrightsreserved.//#import”AppDelegate.h”#import”KCMainViewController.h”@interfaceAppDelegate()@end@implementationAppDelegate#pragmamark-应用代理方法-(BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchOptions{_window=[[UIWindowalloc]initWithFrame:[UIScreenmainScreen].bounds];_window.backgroundColor=[UIColorcolorWithRed:249/255.0green:249/255.0blue:249/255.0alpha:1];//设置全局导航条风格和颜色[[UINavigationBarappearance]setBarTintColor:[UIColorcolorWithRed:23/255.0green:180/255.0blue:237/255.0alpha:1]];[[UINavigationBarappearance]setBarStyle:UIBarStyleBlack];KCMainViewController*mainController=[[KCMainViewControlleralloc]init];_window.rootViewController=mainController;[_windowmakeKeyAndVisible];//如果已经获得发送通知的授权则创建本地通知,否则请求授权(注意:如果不请求授权在设置中是没有对应的通知设置项的,也就是说如果从来没有发送过请求,即使通过设置也打不开消息允许设置)if([[UIApplicationsharedApplication]currentUserNotificationSettings].types!=UIUserNotificationTypeNone){[selfaddLocalNotification];}else{[[UIApplicationsharedApplicat
有哪些信誉好的足球投注网站
文档评论(0)