Middle
Aký je proces spracovania udalosti, keď používateľ klikne na ikonu aplikácie?
sobes.tech AI
Odpoveď od AI
- Používateľ klepne na ikonu aplikácie na domovskej obrazovke.
SpringBoard(systémová aplikácia na správu domovskej obrazovky) zachytí udalosť dotyku.SpringBoardurčí, ktorá aplikácia zodpovedá stlačenej ikone.SpringBoardodošle IPC správu (Inter-Process Communication) procesulaunchd.launchdje systémový proces zodpovedný za spustenie iných procesov. Obdrží požiadavku na spustenie aplikácie.launchdskontroluje prístupové práva, podpíše aplikáciu.launchdvytvorí nový proces pre aplikáciu.- Najskôr sa v vytvorenom procese spustí funkcia
main(). - Vo vnútri
main()sa zvyčajne volá funkciaUIApplicationMain(). UIApplicationMain()vykoná nasledovné kroky:- Vytvorí objekt
UIApplicationalebo jeho podtriedu. - Vytvorí objekt delegáta aplikácie (ktorý implementuje protokol
UIApplicationDelegate), ak je uvedený. - Vytvorí hlavnú slučku spracovania udalostí (
run loop). - Načíta hlavný Storyboard alebo xib súbor (ak je uvedený v
Info.plist). - Vytvorí hlavné okno (
UIWindow) a koreňový kontrolér (root view controller). - Zavolá metódu
application(_:didFinishLaunchingWithOptions:)delegáta aplikácie. - Spustí hlavnú slučku spracovania udalostí, čím pripraví aplikáciu na interakciu s používateľom.
- Vytvorí objekt
- Aplikácia sa stáva viditeľnou a pripravenou na fungovanie.