我正在开发一个使用UILocalNotification
来执行调度任务的应用程序。有一个类处理调度任务,并且从applicationdidfinishwithlaunchingoption
和didReceiveLocalNotification
调用其函数来处理活动和非活动状态的任务。我在plist文件中将“应用程序不在后台运行”的键设置为YES。
我的用户安排任务,然后点击homebutton。当他们看到UILOcalNotification
的横幅并点击它时,didfinishlaunchingwithoption
都不会被触发,didReceiveLocalNotification
也会被触发。我尝试将“应用程序不在后台运行”设置为“否”并且他们检查处理任务并且它在该模式下运行良好但是我不希望处于此模式,因为我听到Apple因为后台运行而拒绝某些应用程序他们没有像VOIP那样做任何相关的任务。
答案 0 :(得分:1)
我认为应该触发didfinishlaunchingwithoption
方法,但是你无法在调试模式下看到它。我有一个警报应用程序,我也将Application does not run in background
设置为是,我经常遇到这种情况。
所以,我的建议是编辑Scheme并将启动选项切换到wait for app to launch manually
。并调试以查看它是否被触发。