Життєвий цикл застосунку
Стани застосунку, AppDelegate, SceneDelegate, background modes, завершення застосунку
1Що таке UIApplicationDelegate?
Що таке UIApplicationDelegate?
Відповідь
UIApplicationDelegate — це протокол, який визначає методи зворотного виклику для життєвого циклу застосунку. Він дозволяє реагувати на важливі події, такі як запуск, перехід у фоновий режим або повернення на передній план. Кожен застосунок iOS повинен реалізувати цей протокол у своєму класі AppDelegate, щоб правильно керувати своїм життєвим циклом. Це центральна точка для ініціалізації сторонніх сервісів, налаштування сповіщень та керування глобальними переходами станів. Починаючи з iOS 13, цей протокол розділяє відповідальність із SceneDelegate для керування кількома вікнами.
2Коли викликається метод application(_:didFinishLaunchingWithOptions:)?
Коли викликається метод application(_:didFinishLaunchingWithOptions:)?
Відповідь
Цей метод викликається під час запуску застосунку, після ініціалізації UIApplication і перед відображенням користувацького інтерфейсу. Це ідеальний момент для ініціалізації сторонніх сервісів, налаштування бази даних, реєстрації сповіщень і встановлення глобальних параметрів. Тривалих операцій слід уникати, оскільки вони затримують початкове відображення.
3Які основні стани в життєвому циклі застосунку iOS?
Які основні стани в життєвому циклі застосунку iOS?
Відповідь
Життєвий цикл має п'ять основних станів: Not Running (застосунок не запущено або завершено), Inactive (застосунок на передньому плані, але не отримує події, тимчасові переривання), Active (застосунок працює нормально та отримує події), Background (застосунок виконується у фоновому режимі з приблизно 30 секундами до призупинення) та Suspended (застосунок заморожено в пам'яті, без виконання). Розуміння цих станів дозволяє правильно керувати ресурсами, обробляти дозволи та оптимізувати акумулятор. Переходи між цими станами запускають методи AppDelegate або SceneDelegate.
Яка різниця між applicationWillResignActive та applicationDidEnterBackground?
Яка роль applicationDidBecomeActive?
+17 питань зі співбесід
Інші теми співбесід iOS
Основи Swift
Основи мови Swift
Основи UIKit
Життєвий цикл UIViewController
UserDefaults & Keychain
Auto Layout & Constraints
UITableView & UICollectionView
Основи SwiftUI
Керування станом у SwiftUI
Навігація SwiftUI
Networking & URLSession
Codable та парсинг JSON
Core Data
Протоколо-орієнтоване програмування
Архітектура MVVM
Push-сповіщення
Модульне тестування та XCTest
Тестування інтерфейсу користувача
Xcode і система збірки
Swift Package Manager
Memory Management & ARC
Combine Framework
Concurrency & async/await
iOS Design Patterns
Оптимізація продуктивності
Безпека та шифрування
SwiftUI Advanced
Архітектура застосунків iOS
Опануй iOS для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно