我在UNNotificationAction
上使用了本地通知,当用户触发操作时,我需要向服务器发送API请求。
在Low power mode
上打开设备并且Background App Refresh
关闭并且应用被杀死时,我在操作处理程序上得到了奇怪的行为。
用户在通知上点击选定的操作后-App Delegate didFinishLaunchingWithOptions()
开始处理,但从未完成。
似乎该进程已暂停在该函数的中间。
此行为也会停止Notification Action的处理程序功能。
用日志进行监视(从Xcode调试它始终可以正常工作)之后,我看到应用程序的状态在启动时处于后台。
此外,我看不到任何表明挤压或过程暂停的日志
我找不到处理此类案件的任何文档。
答案 0 :(得分:0)
这是一个很长的路要走,我不知道它是否能解决您的问题,但是请记住,在didFinishLaunchingWithOptions
方法中您可以做什么有局限性。 IIRC,如果该方法执行花费的时间超过10秒钟,则应用程序将被杀死(系统认为某些东西过分弹道)。因此,如果您需要通过该方法来触发一些繁重的事情,请确保以异步方式运行它。