Зарегистрированная задача BGTaskScheduler не запускает launchHandlerIOS

Программируем под IOS
Ответить
Anonymous
 Зарегистрированная задача BGTaskScheduler не запускает launchHandler

Сообщение Anonymous »

Я пытаюсь запланировать запуск фоновой задачи в фоновом режиме с помощью BGTaskScheduler.shared.register(identifier:queue:launchHandler:), но блок launchHandler никогда не выполняется. p>
Что я пробовал:
  • Я пробовал как на симуляторе, так и на физическом устройстве.
  • Я включил фоновые режимы (фоновая выборка).
  • и отправил задачу в SceneDelegate на SceneDidEnterBackground(:) с помощью BGTaskScheduler.shared. submit(:).
  • Я также добавил идентификатор в «Разрешенные идентификаторы планировщика фоновых задач» в Info.plist.
  • Я попробовал выбрать «Отладка» > «Имитировать фоновую выборку».
Вот мой код:
func scene(_ scene: UIScene,
willConnectTo session: UISceneSession,
options connectionOptions: UIScene.ConnectionOptions) {
let isRegistered = BGTaskScheduler.shared.register(forTaskWithIdentifier: "com.example.bgTaskIdentifier",
using: nil) { task in
print("Executed") // Does not print
self.handleAppRefresh(task: task as! BGAppRefreshTask)
}

print("isRegistered: \(isRegistered)") // Prints "isRegistered: true"
}

func sceneDidEnterBackground(_ scene: UIScene) {
scheduleAppRefresh()
print("Entered Background") // Prints "Entered Background"
}

func scheduleAppRefresh() {
let request = BGAppRefreshTaskRequest(identifier: "com.example.bgTaskIdentifier")
request.earliestBeginDate = Date(timeIntervalSinceNow: 5 * 60)

do {
try BGTaskScheduler.shared.submit(request)
} catch {
print("Could not schedule app refresh: \(error)") // Does not reach the catch block
}
}



Подробнее здесь: https://stackoverflow.com/questions/784 ... nchhandler
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»