Proces aktualizacji

Architektura aktualizacji AIR realizuje proces aktualizacji w następujących krokach:

  1. Procedura inicjowania obiektu Updater sprawdza, czy w zdefiniowanym okresie dokonano już sprawdzenia dostępności aktualizacji (patrz Konfigurowanie ustawień aktualizacji ). Jeśli przypada termin aktualizacji, proces aktualizacji jest kontynuowany.

  2. Obiekt Updater pobiera i interpretuje plik deskryptora aktualizacji.

  3. Obiekt Updater pobiera plik AIR aktualizacji.

  4. Obiekt Updater instaluje zaktualizowaną wersję aplikacji.

Obiekt Updater wywołuje zdarzenia po zakończeniu każdego z tych kroków. W architekturze ApplicationUpdater możliwe jest anulowanie zdarzeń wskazujących na pomyślne zakończenie kroków procesu. W wypadku anulowania jednego z takich zdarzeń anulowany zostanie następny krok procesu. W architekturze ApplicationUpdaterUI obiekt Updater wyświetla okno dialogowe umożliwiające użytkownikowi anulowanie lub wykonanie każdego z kroków procesu.

W wypadku anulowania zdarzenia możliwe jest wznowienie procesu poprzez wywołanie metod obiektu Updater.

W miarę, jak obiekt Updater w wersji ApplicationUpdater realizuje kolejne etapy aktualizacji, jego bieżący stan jest zapisywany we właściwości currentState . Tej właściwości przypisywany jest ciąg znaków o jednej z następujących możliwych wartości:

  • "UNINITIALIZED" — obiekt Updater nie został zainicjowany.

  • "INITIALIZING" — trwa inicjowanie obiektu Updater.

  • "READY" — obiekt Updater został zainicjowany.

  • "BEFORE_CHECKING" — obiekt Updater nie sprawdził jeszcze, czy istnieje plik deskryptora aktualizacji.

  • "CHECKING" — obiekt Updater sprawdza, czy istnieje plik deskryptora aktualizacji.

  • "AVAILABLE" — plik deskryptora jest dostępny dla obiektu Updater.

  • "DOWNLOADING" — obiekt Updater pobiera plik AIR.

  • "DOWNLOADED" — obiekt Updater pobrał plik AIR.

  • "INSTALLING" — obiekt Updater instaluje plik AIR.

  • "PENDING_INSTALLING" — obiekt Updater jest zainicjowany i istnieją oczekujące aktualizacje.

Niektóre metody obiektu Updater są wykonywane tylko wtedy, gdy obiekt ten jest w określonym stanie.