本地通知
发送本地通知
// 1.创建本地推送通知对象
UILocalNotification *ln = [[UILocalNotification alloc] init];
// 2.设置通知属性
// 音效文件名
ln.soundName = @"buyao.wav";
// 通知的具体内容
ln.alertBody = @"您有新的消息了";
// 锁屏界面显示的小标题("滑动来"+alertAction)
ln.alertAction = @"查看消息";
// 设置app右上角消息数字
ln.applicationIconBadgeNumber = 10;
// 通知第一次发出的时间(5秒后发出)
ln.fireDate = [NSDate dateWithTimeIntervalSinceNow:5];
// 设置时区(跟随手机的时区)
ln.timeZone = [NSTimeZone defaultTimeZone];
// 设置通知的额外信息
ln.userInfo = @{@"icon": @"test.png",
@"title" : @"重大新闻",
@"time" : @"2014-08-14 11:19",
@"body" : @"重大新闻:。。。。"
};
// 设置启动图片
ln.alertLaunchImage = @"Default";
// 设置重复发出通知的时间间隔
ln.repeatInterval = NSCalendarUnitHour;
// 3.调动通知(启动任务)
[[UIApplication sharedApplication] scheduleLocalNotification:ln];
// 2.设置通知属性
// 音效文件名
ln.soundName = @"buyao.wav";
// 通知的具体内容
ln.alertBody = @"您有新的消息了";
// 锁屏界面显示的小标题("滑动来"+alertAction)
ln.alertAction = @"查看消息";
// 设置app右上角消息数字
ln.applicationIconBadgeNumber = 10;
// 通知第一次发出的时间(5秒后发出)
ln.fireDate = [NSDate dateWithTimeIntervalSinceNow:5];
// 设置时区(跟随手机的时区)
ln.timeZone = [NSTimeZone defaultTimeZone];
// 设置通知的额外信息
ln.userInfo = @{@"icon": @"test.png",
@"title" : @"重大新闻",
@"time" : @"2014-08-14 11:19",
@"body" : @"重大新闻:。。。。"
};
// 设置启动图片
ln.alertLaunchImage = @"Default";
// 设置重复发出通知的时间间隔
ln.repeatInterval = NSCalendarUnitHour;
// 3.调动通知(启动任务)
[[UIApplication sharedApplication] scheduleLocalNotification:ln];
取消本地通知
NSArray *notes = [UIApplication sharedApplication].scheduledLocalNotifications;
[[UIApplication sharedApplication] cancelAllLocalNotifications];
如何判断是点击通知进入的应用程序还是惦记app图标进入的应用程序
JLAppDelegate文件
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UILocalNotification *note = launchOptions[UIApplicationLaunchOptionsLocalNotificationKey];
if (note) {
// 点击本地通知启动的程序,在这里设置控制器的跳转
}else{
// 直接点击app图标启动的程序
}
return YES;
}
/**
* 当用户点击本地通知进入app的时候调用 、通知发出的时候(app当时并没有被关闭)
*/
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
{
UILocalNotification *note = launchOptions[UIApplicationLaunchOptionsLocalNotificationKey];
if (note) {
// 点击本地通知启动的程序,在这里设置控制器的跳转
}else{
// 直接点击app图标启动的程序
}
return YES;
}
/**
* 当用户点击本地通知进入app的时候调用 、通知发出的时候(app当时并没有被关闭)
*/
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
}