关于iOS8上本地通知

本文深入探讨了iOS应用如何实现本地通知,包括通知的创建、配置、注册及触发过程,详细介绍了iOS 8及以上版本中本地通知的注册方法、通知内容的设置以及通知触发时的响应逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本地通知, 只有在程序进入后台或者退出程序时才会执行, 如果程序正在运行, 不会执行

在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



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值