我正在实现BackgroundTasks框架来更新数据。但我得到了下面的问题
Could not schedule refreshApp: Error Domain=BGTaskSchedulerErrorDomain Code=1 "(null)"
Could not schedule data featch: Error Domain=BGTaskSchedulerErrorDomain Code=1 "(null)"
2019-10-01 19:19:32.550320+0530 SOBackgroundTask[34131:1129470] Can't end BackgroundTask: no background task exists with identifier 3 (0x3), or it may have already been ended. Break in UIApplicationEndBackgroundTaskError() to debug.发布于 2019-10-23 16:43:39
解决方案是在设备上运行。我是在模拟器上跑的。然而,它显示后台App已经在设置中启用,同时在模拟器上运行。
发布于 2019-10-03 17:19:27
以下是从Domain=BGTaskSchedulerErrorDomain头中提取的可能的错误代码,并给出了一些解释。
此应用程序/扩展程序无法使用BGTaskSchedulerErrorCodeUnavailable = 1 //后台任务调度功能。背景应用程序刷新可能已在设置中被禁用。
BGTaskSchedulerErrorCodeTooManyPendingTaskRequests = 2 //无法提交任务请求,因为此类挂起的任务请求太多。在再次尝试之前,取消一些现有的任务请求。
BGTaskSchedulerErrorCodeNotPermitted = 3 //任务请求无法提交,因为UIBackgroundModes数组中没有包含适当的后台模式,或者应用程序的Info.plist中的BGTaskSchedulerPermittedIdentifiers数组中没有包含它的标识符。
发布于 2020-04-28 13:03:08
适用于:
BGTaskSchedulerErrorDomain error 3检查项目的.xcodeproj文件中是否有适当的目标。然后转到info选项卡和自定义iOS目标属性,并检查是否添加了允许的后台任务调度程序标识符(BGTaskSchedulerPermittedIdentifiers)。
这解决了将BackgroundTasks添加到现有项目时的问题。
https://stackoverflow.com/questions/58187320
复制相似问题