"Use the debugger during development to start tasks and to terminate them before completion."
작업을 시작하기 위해, 그리고 컴플리션 전에 작업을 종료시키기 위해 개발 중 디버거를 사용합니다.
백그라운드 작업으로 스케줄링한 시간과 시스템이 작업 실행을 위해 앱을 launch하는 시점 사이의 지연은 몇 시간이 될 수 있습니다. 앱을 개발하는 동안 두 가지 private 함수를 사용해서 작업을 시작하고 작업의 종료를 빠르게 강제할 수 있습니다. 선택한 타임라인에 따라 달라지도록 구현합니다. 디버그 함수는 기기에서만 작동합니다.
Important
private 함수는 개발 중에만 사용해야 합니다. 이러한 함수에 대한 참조를 포함하는 앱을 앱 스토어에 제출하면 거절됩니다.
작업을 launch하려면 아래처럼 해야 합니다.
submit(_:)
이 성공적으로 호출되는 이후에 실행할 코드를 브레이크포인트 설정합니다.TASK_IDENTIFIER
로 대체하면서 합니다.e -l objc -- (void)[[BGTaskScheduler sharedScheduler] _simulateLaunchForTaskWithIdentifier:@"TASK_IDENTIFIER"]
작업을 강제로 종료하려면 아래처럼 합니다.
TASK_IDENTIFIER
로 대체하면서 합니다.e -l objc -- (void)[[BGTaskScheduler sharedScheduler] _simulateExpirationForTaskWithIdentifier:@"TASK_IDENTIFIER"]
백그라운드에서 앱을 launch 하는 작업 요청에 대해 스케줄링하기 위한 클래스입니다.
https://developer.apple.com/documentation/backgroundtasks/bgtaskscheduler
https://velog.io/@panther222128/BGTaskScheduler
앱에서 백그라운드 런타임 스케줄링을 위한 최선의 메소드를 선택합니다.
https://developer.apple.com/documentation/backgroundtasks/choosing_background_strategies_for_your_app
https://velog.io/@panther222128/Choosing-Background-Strategies-for-Your-App