通过iOS的UILocalNotification Class可以实现本地app的定时推送功能,即使当前app是后台关闭状态。
可以实现诸如,设置app badgenum,弹出一个alert,播放声音等等,实现很简单
1
2
3
4
5
6
7
8
9
10
|
UILocalNotification *notification=[[UILocalNotification alloc] init]; if (notification!=nil) { NSDate *now=[NSDate new ]; notification.fireDate=[now dateByAddingTimeInterval:15]; notification.timeZone=[NSTimeZone defaultTimeZone]; notification.alertBody=@ "定时推送通知!" ; notification.soundName = @ "default" ; [notification setApplicationIconBadgeNumber:22]; [[UIApplication sharedApplication] scheduleLocalNotification:notification]; } |
写了一个demo,大家直接看demo就一目了然了,很方便,在适当场合使用还是蛮实用的~
源代码链接:https://github.com/andypan1314/LocalNotificationTest
iOS 设置每天下午4点推送本地通知
1
2
3
4
5
6
7
8
9
10
11
12
|
UILocalNotification *notification=[[UILocalNotification alloc] init]; if (notification!=nil) { //判断系统是否支持本地通知 notification.fireDate = [NSDate dateWithTimeIntervalSince1970:16*60*60*24]; //本次开启立即执行的周期 notification.repeatInterval=kCFCalendarUnitWeekday; //循环通知的周期 notification.timeZone=[NSTimeZone defaultTimeZone]; notification.alertBody=@ "哇哇哇" ; //弹出的提示信息 notification.applicationIconBadgeNumber=0; //应用程序的右上角小数字 notification.soundName= UILocalNotificationDefaultSoundName; //本地化通知的声音 //notification.alertAction = NSLocalizedString(@"美女呀", nil); //弹出的提示框按钮 notification.hasAction = NO; [[UIApplication sharedApplication] scheduleLocalNotification:notification]; } |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。