推送通知的使用细节:app
1,发出推送通知时,若是程序正运行在前台,那么推送通知就不会被呈现出来。对象
2,点击推送通知后,默认会自动打开发出推送通知的app。游戏
3,无论app打开仍是关闭,推送通知都能如期发出。进程
本地推送通知的使用场景:ci
经常使用来定时提醒用户完成一些任务,好比清理垃圾,记帐,买衣服,看电影,玩游戏。开发
//1,建立本地通知对象it
UILocalNotification *ln = [[UILocalNotification alloc]init];io
//2,设置通知属性test
ln.soundName = @"buyao.wav"//音效文件名后台
ln.alertBody = @"重大新闻:XXXX";//通知内容
ln.fireDate = [NSDate dateWithTimeIntervalSinceNow:5];//通知第一次发出的时间(5秒后发出)
ln.timeZone=[NSTimeZone defaultTimeZone];//设置时区(跟随手机的时区)
ln.applicationIconBadgeNumber = 5 //设置app图标数字
ln.repeatInterval = NSCalendarUnitMinute;//设置重复发出通知的时间间隔
ln.alertAction = @"查看新闻吧";
ln.userInfo = @{@"icon":@"test.png",@"title":@"重大新闻"}
//当即发送
[[UIApplication shareApplication]presentLocalNotificationNow:ln];
//3,调度通知(启动任务)
[[UIApplication shareApplication] scheduleLocalNotification:ln];
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification;
//从在跳到下一个控制器以前,会执行前一个控制器的方法。seque 表明那根线
-(void)prepareForSeque:(UIStoryboardSeque*)seque sender:(UILocalNotification*)note;
//判断在前台仍是在后台;
appliciation.aplliciationState 有一个枚举里有三个属性 第一个是前台 后面是后台