Жизненный цикл UIApplication может отличаться в разных версиях iOS, например, в зависимости от поддержки сцен в приложении. 14
В iOS 12 и более ранних версиях для реагирования на события жизненного цикла использовался объект делегата UIApplication. 14 Он управлял всеми окнами приложения, включая те, которые отображаются на отдельных экранах. 2 Изменения состояния приложения затрагивали всё приложение, включая пользовательский интерфейс на внешних дисплеях. 2
С iOS 13 появился UISceneDelegate, который отвечает за обработку жизненного цикла сцен (окон) в многосценовых приложениях. 13 Каждый объект UISceneDelegate управляет жизненным циклом отдельного окна (сцены) и выполняет аналогичные методы, что и UIApplicationDelegate, но на уровне сцены. 3
Таким образом, в iOS 13 и более поздних версиях для управления жизненным циклом используется UISceneDelegate, а в iOS 12 и более ранних версиях — UIApplicationDelegate. 14