Sobes.tech
Middle

Ποια είναι η διαδικασία επεξεργασίας του συμβάντος όταν ο χρήστης πατάει το εικονίδιο της εφαρμογής;

sobes.tech AI

Απάντηση από AI

  1. Ο χρήστης πατάει το εικονίδιο της εφαρμογής στην αρχική οθόνη.
  2. Το SpringBoard (η συστημική εφαρμογή για τη διαχείριση της αρχικής οθόνης) παρεμβαίνει στο συμβάν αφής.
  3. Το SpringBoard καθορίζει ποια εφαρμογή αντιστοιχεί στο πατημένο εικονίδιο.
  4. Το SpringBoard στέλνει ένα μήνυμα IPC (Inter-Process Communication) στη διαδικασία launchd.
  5. Το launchd είναι μια συστημική διαδικασία υπεύθυνη για την εκκίνηση άλλων διαδικασιών. Λαμβάνει το αίτημα εκκίνησης της εφαρμογής.
  6. Το launchd ελέγχει τα δικαιώματα πρόσβασης, υπογράφει την εφαρμογή.
  7. Το launchd δημιουργεί μια νέα διαδικασία για την εφαρμογή.
  8. Πρώτα, στη δημιουργημένη διαδικασία, εκτελείται η λειτουργία main().
  9. Μέσα στο main(), καλείται συνήθως η UIApplicationMain().
  10. Η UIApplicationMain() πραγματοποιεί τις ακόλουθες ενέργειες:
    • Δημιουργεί ένα αντικείμενο UIApplication ή την υποκλάση του.
    • Δημιουργεί ένα αντικείμενο delegate της εφαρμογής (που υλοποιεί το πρωτόκολλο UIApplicationDelegate), αν έχει οριστεί.
    • Δημιουργεί τον κύριο βρόχο επεξεργασίας γεγονότων (run loop).
    • Φορτώνει το κύριο Storyboard ή το αρχείο xib (αν έχει οριστεί στο Info.plist).
    • Δημιουργεί το κύριο παράθυρο (UIWindow) και τον ριζικό ελεγκτή προβολής (root view controller).
    • Καλεί τη μέθοδο application(_:didFinishLaunchingWithOptions:) του delegate της εφαρμογής.
    • Ξεκινά τον κύριο βρόχο επεξεργασίας γεγονότων, καθιστώντας την εφαρμογή έτοιμη για αλληλεπίδραση με τον χρήστη.
  11. Η εφαρμογή γίνεται ορατή και έτοιμη για λειτουργία.