Middle
Какъв е процесът на обработка на събитието, когато потребителят натисне иконата на приложението?
sobes.tech AI
Отговор от AI
- Потребителят натиска иконата на приложението на началния екран.
SpringBoard(системното приложение за управление на началния екран) прихваща събитието на допир.SpringBoardопределя кое приложение съответства на натиснатата икона.SpringBoardизпраща IPC съобщение (Inter-Process Communication) към процесаlaunchd.launchdе системен процес, отговорен за стартирането на други процеси. Получава заявка за стартиране на приложението.launchdпроверява правата за достъп, подписва приложението.launchdсъздава нов процес за приложението.- Първо, в създадения процес се изпълнява функцията
main(). - Вътре в
main()обикновено се извиква функциятаUIApplicationMain(). UIApplicationMain()извършва следните действия:- Създава обект
UIApplicationили негов подклас. - Създава обект делегат на приложението (който реализира протокола
UIApplicationDelegate), ако е указан. - Създава основния цикъл за обработка на събития (
run loop). - Зарежда основния Storyboard или xib файл (ако е указан в
Info.plist). - Създава главния прозорец (
UIWindow) и кореновия контролер на изгледа (root view controller). - Обажда се на метода
application(_:didFinishLaunchingWithOptions:)на делегата на приложението. - Стартира основния цикъл за обработка на събития, като прави приложението готово за взаимодействие с потребителя.
- Създава обект
- Приложението става видимо и готово за работа.