iOS背景下载,带有无提示通知iOS 11

4. URLSession完成处理程序不能使用,因此我们必须使用委托

5.永远不要不实现后台模式委托。 可以在后台启动或恢复使用具有后台配置的URLSession的应用程序,以便处理该会话中任务的完成

在此实现中,我能够观察到文件在URLSession的临时位置下载并移至所需的位置,然后进行解析和核心数据缓存。 但是,情况并非总是如此,下载委托在后台调用后,执行突然停止。 这里只有UIApplication开始后台任务开始。

6.实现UIApplication开始后台任务。 在didReceiveRemoteNotification中调用callTask​​()。 根据文档,此应用程序最多为您提供180秒的时间来在后台执行任务。 因此,请确保在接收静默通知时,下载,解析和保存所花费的总时间不超过180秒。

7.在BGTask的完成处理程序中调用stopBgTask()

执行以下步骤后,当设备处于非活动和挂起状态(包括密码锁定)时,应用程序将下载数据。 在应用程序崩溃或终止时,应用程序无法处理静默通知,而静默通知全都是不同的主题。

希望这对您有帮助。 任何帮助都可以通过pratheesh_db@hotmail.com与我联系。