本地通知, 只有在程序进入后台或者退出程序时才会执行, 如果程序正在运行, 不会执行
在iOS8上面需要加上
[[UIApplication sharedApplication] registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes::UIUserNotificationTypeAlert|UIUserNotificationTypeBadge|UIUserNotificationTypeSound categories:nil]];
// 1.创建通知
UILocalNotification*localNote = [[UILocalNotificationalloc]init];
设置时区
notification.timeZone = [NSTimeZone defaultTimeZone];
// 2.设置属性
localNote.alertAction=@"聊天吧亲";//操作标题,
比如说QQ的谁谁发了什么什么
localNote.alertBody=@"啦啦啦!!!";//正文
localNote.applicationIconBadgeNumber=5;//程序图标右上角的数字
localNote.repeatInterval = NSCalendarUnitMinute;//重复时间间隔
repeatCalendar 重复日历,
soundName = “音效1.caf”; 弹出通知时候的音乐
// 推送声音
notification.soundName = UILocalNotificationDefaultSoundName;
userInfo 可以通知里面放的内容
localNote.alertLaunchImage=@"Default";//点击通知,打开程序时候现实的启动图片
//开火, 多少秒后开始执行
localNote.fireDate= [NSDatedateWithTimeIntervalSinceNow:5];
// 3.注册通知(添加)
UIApplication*app = [UIApplication sharedApplication];
[app
cancelAllLocalNotifications];//取消所以通知
[appscheduleLocalNotification:localNote];//添加通知
在appDelegate里面, 当启动程序是会调用此方法, 如果程序已经完全退出, 点击图标或者通知,都会调用这个方法,如果是点通知进入的程序, 字典里面会放有通知的userinfo内容, 如果不是, 字典为空
- (BOOL)application:(UIApplication*)application
didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
这两个方法程序执行只会调用一个
/**
说明用户点击通知,进入了程序(程序还在运行中,程序并没有被关掉)
*/
- (void)application:(UIApplication*)application didReceiveLocalNotification:(UILocalNotification*)notification
说明用户点击通知,进入了程序(程序还在运行中,程序并没有被关掉)
*/
- (void)application:(UIApplication*)application didReceiveLocalNotification:(UILocalNotification*)notification