仿苹果手机闹钟_高仿iOS系统闹钟 UserNotifications

本文通过创建Alarm_Clock_UserNotifications演示如何模仿iOS系统闹钟,使用UserNotifications框架。详细介绍了添加、移除闹钟的实现方法,并涵盖了通知触发器、铃声设置、通知栏选项及用户交互的处理。示例代码展示了如何处理通知注册、添加本地通知、重复设置以及用户响应。
摘要由CSDN通过智能技术生成

Alarm_Clock_UserNotifications

仿ios系统闹钟

添加闹钟效果图

001.gif?raw=true

收到通知效果图

569744c0e1c230ea82bfaa59c4df16ab.gif

更新日志

2018.09.12 由于iOS系统限制了注册本地推送的数量,最大的注册量为64条,且一旦超出64条,所有的推送都将失效,故而在添加推送的时候做了一个判断,超过64条后,将不添加,以免影响已经添加的推送。

前言

最近项目中涉及到了本地通知的功能,索性就模仿系统闹钟写了个demo,对于iOS系统闹钟,应该都比较熟悉,该demo,基本实现了系统闹钟的全部功能。该demo本地通知使用的是iOS10 推出的UserNotifications, 关于UserNotifications的介绍和使用,网上已有诸多文章,在此就不多做赘述。

UNNotificationsManager

关于闹钟所使用到的UserNotifications库 做了一个简单的封装, 包含了注册通知,添加通知,以及 一些通知组件的 实现方法,同时提供了可供 外部使用的收到推送的通知

extern NSString * const UNDidReciveRemoteNotifationKey;//收到远程通知时调用

extern NSString * const UNDidReciveLocalNotifationKey; //收到本地通知时

extern NSString * const UNNotifationInfoIdentiferKey; //本地通知userinfo 里 Identifer的key值

一些其他方法,以demo为准

//注册本地通知

+ (void)registerLocalNotification;

#pragma mark -- AddNotification

/* 添加通知

* identifer 标识符

* body 主体

* title 标题

* subTitle 子标题

* weekDay 周几

* date 日期

* repeat 是否重复

* music 音乐

*/

+ (void)addNotificationWithBody:(NSString *)body

title:(NSString *)title

subTitle:(NSString *)subTitle

weekDay:(NSInteger)weekDay

date:(NSDate *)date

music:(NSString *)music

identifer:(NSString *)identifer

isRepeat:(BOOL)repeat

completionHanler:(void (^)(NSError *))handler;

#pragma mark -- NotificationMana

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值