Sobes.tech
Middle

Aký je proces spracovania udalosti, keď používateľ klikne na ikonu aplikácie?

sobes.tech AI

Odpoveď od AI

  1. Používateľ klepne na ikonu aplikácie na domovskej obrazovke.
  2. SpringBoard (systémová aplikácia na správu domovskej obrazovky) zachytí udalosť dotyku.
  3. SpringBoard určí, ktorá aplikácia zodpovedá stlačenej ikone.
  4. SpringBoard odošle IPC správu (Inter-Process Communication) procesu launchd.
  5. launchd je systémový proces zodpovedný za spustenie iných procesov. Obdrží požiadavku na spustenie aplikácie.
  6. launchd skontroluje prístupové práva, podpíše aplikáciu.
  7. launchd vytvorí nový proces pre aplikáciu.
  8. Najskôr sa v vytvorenom procese spustí funkcia main().
  9. Vo vnútri main() sa zvyčajne volá funkcia UIApplicationMain().
  10. UIApplicationMain() vykoná nasledovné kroky:
    • Vytvorí objekt UIApplication alebo 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.
  11. Aplikácia sa stáva viditeľnou a pripravenou na fungovanie.