BackgroundTask iOS 13 Swift со сценами - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь реализовать новую функциональность фоновых задач iOS 13 с новым приложением, которое использует Сцены (также новые).Примеров не так много, но те, которые я обнаружил, не использовали SceneDelegates, вместо этого вся логика содержалась в AppDelegate.Это вызывает проблемы, так как событие для приложения, переходящего в фоновый режим, теперь вызывается в SceneDelegate, а не в AppDelegate.

Этот метод не запускается в AppDelegate при использовании сцен

func applicationDidEnterBackground(_ application: UIApplication) {

}

Этот метод запускается в SceneDelegate

func sceneDidEnterBackground(_ scene: UIScene) {

}

Я не могу найти соответствующий метод SceneDelegateдля следующего метода в AppDelegate, где во всех примерах показана регистрация задач BGTaskScheduler

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        BGTaskScheduler.shared.register(forTaskWithIdentifier: "UNIQUE_ID", using: DispatchQueue.global()) { task in
            refreshMethod(task: task as! BGAppRefreshTask)
        }

}

Мой вопрос заключается в том, есть ли какое-либо событие в SceneDelegate, где я могу зарегистрировать задачу, и если нет, то какой шаблон рекомендуется использоватьдля приложений на основе сцены.

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