Ошибка отправки вызова BGTaskScheduler с кодом BGTaskSchedulerErrorDomain: 1 - PullRequest
0 голосов
/ 03 ноября 2019

Сбой BGTaskScheduler с "BGTaskSchedulerErrorDomain" - код: 1 на iOS 13.0

Я попробовал пример программы ColorFeed, доступной в Apple, и столкнулся с той же проблемой

let request = BGProcessingTaskRequest(identifier: "com.example.apple-samplecode.ColorFeed.db_cleaning")
request.requiresNetworkConnectivity = false
request.requiresExternalPower = true

do 
{
  try BGTaskScheduler.shared.submit(request)
} catch {
  print("Could not schedule database cleaning: \(error)")
}

Вышекод вызывается в applicationDidEnterBackground

Ранее задача регистрировалась в didFinishLaunchingWithOptions ...

 BGTaskScheduler.shared.register(forTaskWithIdentifier: "com.example.apple-samplecode.ColorFeed.db_cleaning", using: nil) { task in

        // Downcast the parameter to a processing task as this identifier is used for a processing request.
        self.handleDatabaseCleaning(task: task as! BGProcessingTask)

 }

1 Ответ

0 голосов
/ 03 ноября 2019

код 1 указывает BGTaskScheduler.Error.unavailable

Согласно документации:

Эта ошибка обычно возникает по одной из трех причин:

  • Пользователь отключил фоновое обновление в настройках.
  • Приложение работает на симуляторе, который не поддерживает фоновую обработку.
  • Расширение также не установило для RequestsOpenAccess значение YES вФайл Info.plist, или пользователь не предоставил открытый доступ.

Работаете ли вы на реальном устройстве? Включено ли фоновое обновление на этом устройстве?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...