Sobes.tech
Middle

Kuidas toimub sündmuse töötlemise protsess, kui kasutaja klõpsab rakenduse ikoonil?

sobes.tech AI

Vastus AI-lt

  1. Kasutaja puudutab avaleekraanil rakenduse ikooni.
  2. SpringBoard (süsteemirakendus avaleekraanide haldamiseks) haarab puudutuse sündmuse.
  3. SpringBoard määrab, milline rakendus vastab vajutatud ikoonile.
  4. SpringBoard saadab IPC sõnumi (Inter-Process Communication) protsessile launchd.
  5. launchd on süsteemiprotsess, mis vastutab teiste protsesside käivitamise eest. Ta saab taotluse rakenduse käivitamiseks.
  6. launchd kontrollib juurdepääsuõigusi, allkirjastab rakenduse.
  7. launchd loob uue protsessi rakenduse jaoks.
  8. Esiteks, uues protsessis käivitatakse funktsioon main().
  9. main() sees kutsutakse tavaliselt välja UIApplicationMain().
  10. UIApplicationMain() teeb järgmised toimingud:
    • Loob objekti UIApplication või selle alamklass.
    • Loob rakenduse saadiku objekti (mis rakendab UIApplicationDelegate protokolli), kui see on määratud.
    • Loob peamise sündmuste tsükli (run loop).
    • Laadib peamise Storyboardi või xib faili (kui see on määratud Info.plist-s).
    • Loob peamise akna (UIWindow) ja juurvaate kontrolleri (root view controller).
    • Kutsub välja rakenduse delegate'i meetodi application(_:didFinishLaunchingWithOptions:).
    • Käivitab peamise sündmuste tsükli, valmistades rakenduse kasutaja suhtluseks ette.
  11. Rakendus muutub nähtavaks ja valmis töötama.