Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS 13:BackgroundTasks框架不执行后台作业_Ios_Swift_Background Process_Ios13_Background Fetch - Fatal编程技术网

iOS 13:BackgroundTasks框架不执行后台作业

iOS 13:BackgroundTasks框架不执行后台作业,ios,swift,background-process,ios13,background-fetch,Ios,Swift,Background Process,Ios13,Background Fetch,当应用程序状态为后台/终止时,我需要执行特定任务。 任务必须从CoreData表中获取数据,形成JSON,然后使用restapi调用使用URLSession.shared同步到服务器 我精确地遵循了苹果和几个博客的文档,从编码和Xcode配置的角度设置了后台作业 我已将时间间隔设置为应用程序进入BGAppRefreshTask后台后1分钟 request.earliestBeginDate = Date(timeIntervalSinceNow: 60) 知道这一事实后,iOS系统需要满足许多

当应用程序状态为后台/终止时,我需要执行特定任务。 任务必须从
CoreData
表中获取数据,形成
JSON
,然后使用
restapi调用
使用
URLSession.shared
同步到服务器

我精确地遵循了苹果和几个博客的文档,从编码和Xcode配置的角度设置了后台作业

我已将
时间间隔设置为应用程序进入
BGAppRefreshTask
后台后1
分钟

request.earliestBeginDate = Date(timeIntervalSinceNow: 60)
知道这一事实后,iOS系统需要满足许多参数才能执行后台提取。 我等了24个小时让应用程序运行后台作业,但一次也没执行作业

请分享,如果有人有同样的经历,并提出了具体的解决方案或理由

参考链接,我遵循


URLSession.shared
被明确记录为

应用程序未运行时,无法执行后台下载或上载

创建适合后台处理的会话:

let config = URLSessionConfiguration.background(withIdentifier: "foo")
let session = URLSession(configuration: config)

谢谢你的建议。然而,在后台作业执行后,我已经在UserDefaults中记录了一个时间戳。但实际上作业并没有运行。不过,我将实现您对RESTAPI调用的建议。这里也有同样的问题。我让它工作了一个星期。但在我将第二个任务添加到白名单后,它就不再工作了。它的提交和注册情况良好。不知何故,系统不会触发这些任务。我尝试在Xcode中使用命令来模拟运行,效果很好。