ios-通知:闹钟之关于设置闹钟后,点击app图标进入程序不播放音乐的有关问题(已解决)

ios-通知:闹钟之关于设置闹钟后,点击app图标进入程序不播放音乐的问题(已解决)



请看当天Demo

Demo中详细描述了:

设置闹钟:

1.通知时间未到,点击app直接进入,通知时间到,闹钟不响(闹钟开启未退出程序也是这种情况)

1.1解决此问题先要通过通知时间到调用的代理方法,在里面加一个音频AVFoundation,设置到时播放;

1.2随之而来的另一个问题就是,闹钟冲突即如果通过锁屏或者退出app后,出现通知,点击通知进入程序,(系统默认通知的音乐自动停止,但是自己通过代理方法设定的player仍开始播放)

1.3如何解决以上方法:

设置一个全局开关(即flag),在程序退出或者即将进入前台时将flag设为开YES,可以保持进入主程序player一直播放

在app另一个代理方法applicationDidBecomeActive(激活)中将flag设为关NO,此方法的执行时间是固定的,在程序激活后,

但是变得是通知的代理方法(通知时间到立即执行),所以如果滑动(锁屏)或点击(未锁屏)通知进入app立即执行通知的代理方法,而之后才走applicationDidBecomeActive方法将flag设为NO,因为即将进入前台是已设置flag为YES,通知时间已到开始走通知的代理方法,而激活方法又还没执行,此时闹钟可以响。

这是思路,为方便大家看效果,想看原代码请留下邮箱发给大家。


这是思路,为方便大家看效果,想看原代码请留下邮箱发给大家或者加QQ。