Pakiet | air.update |
Klasa | public class ApplicationUpdaterUI |
Dziedziczenie | ApplicationUpdaterUI EventDispatcher Object |
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Ta klasa jest zawarta w pliku applicationupdater_ui.swc zawartym w środowisku Adobe AIR SDK. Plik applicationupdater_ui.swc znajduje się w katalogu frameworks/libs/air środowiska AIR SDK. Wersja z katalogu frameworks/libs/air środowiska AIR 2 SDK jest przeznaczona do programowania w środowisku Flex 4. Jeśli użytkownik korzysta ze środowiska Flex 3, należy używać wersji z podkatalogu frameworks/libs/air/flex3.
Program Adobe® Flex™ Builder™ ładuje tę klasę automatycznie podczas tworzenia projektu dla środowiska Adobe AIR. Plik SWC należy uwzględnić podczas kompilowania aplikacji za pomocą środowiska Adobe® Flex™ SDK.
Zarządzanie aktualizowaniem aplikacji może być skomplikowanym zagadnieniem. Architektura aktualizacji aplikacji AIR obejmuje elementy interfejsu API pomagające programistom w tworzeniu sprawnych mechanizmów aktualizacji. Funkcje architektury aktualizacji środowiska AIR wspomagają realizację następujących zadań:
-
Regularne sprawdzanie, czy są dostępne aktualizacje — w stałych odstępach czasu lub na żądanie użytkownika.
-
Pobieranie plików AIR (aktualizacji) ze źródła w sieci WWW.
-
Powiadamianie użytkownika o nowo zainstalowanej wersji przy pierwszym uruchomieniu.
-
Potwierdzanie, czy użytkownik chce sprawdzić dostępność aktualizacji.
-
Wyświetlanie informacji o nowej wersji aktualizacji.
-
Wyświetlanie postępu pobierania i informacji o błędach.
Architektura aktualizacji aplikacji AIR umożliwia przechowywanie informacji o wersji aktualizacji aplikacji AIR w prostych plikach konfiguracyjnych XML. W przypadku większości aplikacji przygotowanie tych plików konfiguracyjnych i dodanie prostego kodu wystarczy do zapewnienia użytkownikom końcowym odpowiedniej funkcjonalności aktualizacji.
Klasa AIRUpdateUI implementuje domyślny interfejs użytkownika, z którego może korzystać aplikacja. Interfejs ten udostępnia użytkownikowi podstawowe informacje i opcje związane z aktualizacją aplikacji.
W procesie aktualizacji występuje kolejno szereg stanów.
Stan | Opis |
---|---|
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 aktualizacji jest dostępny. |
Downloading | Obiekt Updater pobiera plik AIR. |
Downloaded | Obiekt Updater pobrał plik AIR. |
Installing | Obiekt Updater instaluje plik AIR. |
Pending install | Obiekt Updater jest zainicjowany i istnieją oczekujące aktualizacje. |
Podczas testowania aplikacji za pomocą programu AIR Debug Launcher (ADL) próba zaktualizowania aplikacji spowoduje wygenerowanie wyjątku IllegalOperationError.
Architektura aktualizacji środowiska AIR jest obsługiwana jedynie w profilu aplikacji lokalnej. Nie jest ona obsługiwana w przypadku aplikacji z rozszerzonym profilem aplikacji lokalnej (aplikacji instalowanych za pomocą rodzimego instalatora). Nie jest również obsługiwana w profilu urządzeń przenośnych (aplikacji iPhone napisanych z użyciem języka ActionScript 3.0). Aby w czasie wykonywania dowiedzieć się, czy jest obsługiwana architektura aktualizacji, należy sprawdzić wartość właściwości Updater.isSupported
.
Szczegółowe informacje na temat platformy aktualizacji AIR zawiera rozdział Aktualizowanie aplikacji AIR w dokumencie Budowanie aplikacji dla środowiska Adobe AIR.
Powiązane elementy interfejsu API
Właściwość | Zdefiniowane przez | ||
---|---|---|---|
configurationFile : File
Położenie pliku konfiguracyjnego, w którym określone są wartości właściwości delay i updateURL. | ApplicationUpdaterUI | ||
constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | ||
currentVersion : String [tylko do odczytu]
Bieżąca wersja aplikacji. | ApplicationUpdaterUI | ||
delay : Number
Odstęp czasu (w dniach) między sprawdzeniami dostępności nowych aktualizacji. | ApplicationUpdaterUI | ||
isCheckForUpdateVisible : Boolean
Powoduje, że okna Sprawdzanie dostępności aktualizacji, Brak aktualizacji i Błąd aktualizacji są widoczne. | ApplicationUpdaterUI | ||
isDownloadProgressVisible : Boolean
Powoduje, że okno Pobieranie aktualizacji jest widoczne. | ApplicationUpdaterUI | ||
isDownloadUpdateVisible : Boolean
Powoduje, że okno Pobieranie aktualizacji jest widoczne. | ApplicationUpdaterUI | ||
isFileUpdateVisible : Boolean
Powoduje, że okna dialogowe Plik - aktualizacja, Plik - brak aktualizacji i Błąd pliku są widoczne. | ApplicationUpdaterUI | ||
isFirstRun : Boolean [tylko do odczytu]
Określa, czy jest to pierwsze uruchomienie po pomyślnej aktualizacji (true), czy nie (false). | ApplicationUpdaterUI | ||
isInstallUpdateVisible : Boolean
Powoduje, że okno dialogowe Instalowanie aktualizacji jest widoczne. | ApplicationUpdaterUI | ||
isNewerVersionFunction : Function
Funkcja, której obiekt Updater powinien używać do porównywania wersji. | ApplicationUpdaterUI | ||
isUnexpectedErrorVisible : Boolean
Powoduje, że okno dialogowe Nieoczekiwany błąd jest widoczne. | ApplicationUpdaterUI | ||
isUpdateInProgress : Boolean [tylko do odczytu]
Właściwość typu Boolean, która ma wartość true, jeśli proces aktualizacji jest uruchomiony, a wartość false w przeciwnym wypadku. | ApplicationUpdaterUI | ||
localeChain : Array
Tablica definiująca łańcuch ustawień narodowych stosowany w interfejsie użytkownika. | ApplicationUpdaterUI | ||
previousApplicationStorageDirectory : File [tylko do odczytu]
Poprzednie położenie katalogu magazynu aplikacji, jeśli zmieniło się po aktualizacji. | ApplicationUpdaterUI | ||
previousVersion : String [tylko do odczytu]
Poprzednia wersja aplikacji. | ApplicationUpdaterUI | ||
updateDescriptor : XML [tylko do odczytu]
Treść pliku deskryptora aktualizacji pobranego spod adresu URL aktualizacji. | ApplicationUpdaterUI | ||
updateURL : String
Położenie pliku deskryptora aktualizacji. | ApplicationUpdaterUI | ||
wasPendingUpdate : Boolean [tylko do odczytu]
Określa, czy istniała aktualizacja odłożona w czasie, nawet jeśli jej instalacja nie powiodła się (true); false w przeciwnym wypadku. | ApplicationUpdaterUI |
Metoda | Zdefiniowane przez | ||
---|---|---|---|
Funkcja konstruktora. | ApplicationUpdaterUI | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Rejestruje obiekt detektora zdarzeń w obiekcie EventDispatcher, dzięki czemu detektor będzie otrzymywał powiadomienia o zdarzeniu. | EventDispatcher | ||
Dynamicznie dodaje nowy pakunek zasobów dla określonego języka. | ApplicationUpdaterUI | ||
Anuluje proces aktualizacji. | ApplicationUpdaterUI | ||
Rozpoczyna proces aktualizacji. | ApplicationUpdaterUI | ||
Wywołuje zdarzenie, tj. kieruje je do przepływu zdarzeń. | EventDispatcher | ||
Sprawdza, czy obiekt EventDispatcher zawiera jakiekolwiek detektory zarejestrowane dla konkretnego typu zdarzeń. | EventDispatcher | ||
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
Inicjuje obiekt Updater. | ApplicationUpdaterUI | ||
Rozpoczyna proces aktualizacji przy użyciu lokalnego pliku AIR. | ApplicationUpdaterUI | ||
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | ||
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | ||
Usuwa detektor z obiektu EventDispatcher. | EventDispatcher | ||
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | ||
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | ||
Zwraca ciąg reprezentujący określony obiekt. | Object | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object | ||
Sprawdza, czy detektor zdarzeń określonego typu jest zarejestrowany w tym obiekcie EventDispatcher lub jego elementach macierzystych. | EventDispatcher |
Zdarzenie | Podsumowanie | Zdefiniowane przez | ||
---|---|---|---|---|
[zdarzenie broadcast] Wywoływane, gdy program Flash Player lub aplikacja środowiska wykonawczego AIR uzyskuje fokus w systemie operacyjnym i przechodzi w stan aktywny. | EventDispatcher | |||
Wywoływane tuż przed zainstalowaniem aktualizacji, po wywołaniu metody installUpdate(). | ApplicationUpdaterUI | |||
Wywoływane przed rozpoczęciem procesu aktualizacji, tuż zanim obiekt Updater podejmie próbę pobrania pliku deskryptora aktualizacji. | ApplicationUpdaterUI | |||
[zdarzenie broadcast] Wywoływane, gdy program Flash Player lub aplikacja AIR traci fokus w systemie operacyjnym i przechodzi w stan nieaktywny. | EventDispatcher | |||
Wywoływane po ukończeniu pobierania pliku aktualizacji. | ApplicationUpdaterUI | |||
Wywoływane, jeśli podczas nawiązywania połączenia lub pobierania pliku aktualizacji wystąpi błąd. | ApplicationUpdaterUI | |||
Wywoływane po wywołaniu metody downloadUpdate() i nawiązaniu połączenia z serwerem. | ApplicationUpdaterUI | |||
Wywoływane, gdy wystąpi błąd podczas inicjowania lub podczas procesu aktualizacji (w razie zajścia nieoczekiwanego zdarzenia). | ApplicationUpdaterUI | |||
Wywoływane, gdy wystąpi błąd podczas weryfikacji pliku przekazanego jako parametr airFile w wywołaniu metody installFromAIRFile(). | ApplicationUpdaterUI | |||
Wywoływane po tym, jak obiekt Updater pomyślnie zweryfikuje plik w wywołaniu metody installFromAIRFile(). | ApplicationUpdaterUI | |||
Wywoływane po zakończeniu inicjowania. | ApplicationUpdaterUI | |||
Wywoływane w chwili pobrania pliku aktualizacji. | ApplicationUpdaterUI | |||
Wywoływane, gdy wystąpi błąd przy próbie pobrania lub przeanalizowania pliku deskryptora aktualizacji. | ApplicationUpdaterUI | |||
Wywoływane po tym, jak obiekt Updater pomyślnie pobierze i zinterpretuje plik deskryptora aktualizacji. | ApplicationUpdaterUI |
configurationFile | właściwość |
configurationFile:File
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Położenie pliku konfiguracyjnego, w którym określone są wartości właściwości delay
i updateURL
. Plik zawiera także ustawienia decydujące o tym, czy aplikacja wyświetla różne okna dialogowe potwierdzeń w procesie aktualizacji. Jeśli ta właściwość wskazuje na nieistniejący plik, wywołanie metody initialize()
spowoduje wygenerowanie wyjątku Error.
Oto przykładowy plik konfiguracyjny:
<?xml version="1.0" encoding="utf-8"?> <configuration xmlns="http://ns.adobe.com/air/framework/update/configuration/1.0" > <url>app:/server/update.xml</url> <delay>1</delay> <defaultUI> <dialog name="checkForUpdate" visible="true" /> <dialog name="downloadUpdate" visible="false" /> <dialog name="downloadProgress" visible="true" /> <dialog name="installUpdate" visible="true" /> </defaultUI> </configuration>
Zamiast ładować plik konfiguracyjny, można za pomocą kodu ActionScript przypisać wartości następującym właściwościom obiektu ApplicationUpdaterUI: delay
, isCheckForUpdateVisible
, isDownloadProgressVisible
, isDownloadUpdateVisible
, isFileUpdateVisible
, isInstallUpdateVisible
oraz updateURL
.
Implementacja
public function get configurationFile():File
public function set configurationFile(value:File):void
Powiązane elementy interfejsu API
currentVersion | właściwość |
currentVersion:String
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Bieżąca wersja aplikacji. Wartość tej właściwości jest przypisywana podczas wywołania metody initialize()
. Przypisana wartość jest równa wersji określonej w pliku deskryptora aplikacji.
Implementacja
public function get currentVersion():String
delay | właściwość |
delay:Number
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Odstęp czasu (w dniach) między sprawdzeniami dostępności nowych aktualizacji.
Wartość 0 (domyślna) oznacza, że licznik czasu nie jest aktywny, a zatem dostępność aktualizacji nie jest regularnie sprawdzana. Opóźnienie można określić za pośrednictwem tej właściwości lub w pliku konfiguracyjnym. Gdy wartość jest określona na oba sposoby, przyjmowana jest wartość przypisana właściwości.
Wartością domyślną jest 0.
Implementacja
public function get delay():Number
public function set delay(value:Number):void
Powiązane elementy interfejsu API
isCheckForUpdateVisible | właściwość |
isCheckForUpdateVisible:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Powoduje, że okna Sprawdzanie dostępności aktualizacji, Brak aktualizacji i Błąd aktualizacji są widoczne. Gdy ta właściwość ma wartość true
, obiekt Updater wyświetla powyższe okna dialogowe w toku aktualizacji. To samo ustawienie można określić w pliku konfiguracyjnym aktualizacji. Wartość określona za pośrednictwem tej właściwości przesłania ustawienie określone w pliku konfiguracyjnym.
Implementacja
public function get isCheckForUpdateVisible():Boolean
public function set isCheckForUpdateVisible(value:Boolean):void
isDownloadProgressVisible | właściwość |
isDownloadProgressVisible:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Powoduje, że okno Pobieranie aktualizacji jest widoczne. Gdy ta właściwość ma wartość true
, obiekt Updater wyświetla powyższe okno dialogowe w toku aktualizacji. To samo ustawienie można określić w pliku konfiguracyjnym aktualizacji. Wartość określona za pośrednictwem tej właściwości przesłania ustawienie określone w pliku konfiguracyjnym.
Implementacja
public function get isDownloadProgressVisible():Boolean
public function set isDownloadProgressVisible(value:Boolean):void
isDownloadUpdateVisible | właściwość |
isDownloadUpdateVisible:Boolean
Wersje środowiska wykonawczego: | AIR 1.5 |
Powoduje, że okno Pobieranie aktualizacji jest widoczne. Gdy ta właściwość ma wartość true
, obiekt Updater wyświetla powyższe okna dialogowe w toku aktualizacji. To samo ustawienie można określić w pliku konfiguracyjnym aktualizacji. Wartość określona za pośrednictwem tej właściwości przesłania ustawienie określone w pliku konfiguracyjnym.
Implementacja
public function get isDownloadUpdateVisible():Boolean
public function set isDownloadUpdateVisible(value:Boolean):void
isFileUpdateVisible | właściwość |
isFileUpdateVisible:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Powoduje, że okna dialogowe Plik - aktualizacja, Plik - brak aktualizacji i Błąd pliku są widoczne. Gdy ta właściwość ma wartość true
, obiekt Updater wyświetla powyższe okna dialogowe w toku aktualizacji. To samo ustawienie można określić w pliku konfiguracyjnym aktualizacji. Wartość określona za pośrednictwem tej właściwości przesłania ustawienie określone w pliku konfiguracyjnym.
Implementacja
public function get isFileUpdateVisible():Boolean
public function set isFileUpdateVisible(value:Boolean):void
isFirstRun | właściwość |
isFirstRun:Boolean
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Określa, czy jest to pierwsze uruchomienie po pomyślnej aktualizacji (true
), czy nie (false
). Obiekt Updater ustawia tę wartość podczas wywołania metody initialize()
. Program powinien sprawdzać, czy właściwość isFirstRun
jest ustawiona na true
, jeśli istnieje potrzeba migracji danych z jednej wersji do drugiej.
Implementacja
public function get isFirstRun():Boolean
Powiązane elementy interfejsu API
isInstallUpdateVisible | właściwość |
isInstallUpdateVisible:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Powoduje, że okno dialogowe Instalowanie aktualizacji jest widoczne. Gdy ta właściwość ma wartość true
, obiekt Updater wyświetla powyższe okno dialogowe w toku aktualizacji. To samo ustawienie można określić w pliku konfiguracyjnym aktualizacji. Wartość określona za pośrednictwem tej właściwości przesłania ustawienie określone w pliku konfiguracyjnym.
Implementacja
public function get isInstallUpdateVisible():Boolean
public function set isInstallUpdateVisible(value:Boolean):void
isNewerVersionFunction | właściwość |
isNewerVersionFunction:Function
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Funkcja, której obiekt Updater powinien używać do porównywania wersji. Domyślnie architektura aktualizacji porównuje wersje w celu wykrycia, czy wersja z witryny zdalnej jest nowsza od zainstalowanej wersji aplikacji. Jednak niekiedy domyślny sposób porównywania nie jest zgodny z systemem oznaczania wersji przyjętym przez programistę. Ta właściwość umożliwia określenie nowej funkcji realizującej porównanie.
Domyślna funkcja porównująca przyjmuje numery wersji w postaci x.y.z, gdzie x, y, i z mogą zawierać litery i cyfry. Domyślna funkcja porównująca rozpoznaje pewne sytuacje szczególne. Jeśli funkcja testująca znajdzie w ciągu wersji ciąg znaków "alpha"
, "beta"
, lub "rc"
, to obowiązuje zasada alpha
< beta
< rc
.
Implementacja
public function get isNewerVersionFunction():Function
public function set isNewerVersionFunction(value:Function):void
Przykład ( Sposób korzystania z tego przykładu )
customFn
dla obiektu Updater o nazwie appUpdate
. Przykładowa funkcja jest bardzo uproszczona. Funkcja niestandardowa powinna zwracać wartość typu Boolean wyznaczoną na podstawie reguł porównywania wersji przyjętych przez programistę.
appUpdate.isNewerVersionFunction = customFn; function customFn (currentVersion:String, updateVersion:String):Boolean { return updateVersion > currentVersion; }
isUnexpectedErrorVisible | właściwość |
isUnexpectedErrorVisible:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Powoduje, że okno dialogowe Nieoczekiwany błąd jest widoczne. Gdy ta właściwość ma wartość true
, obiekt ApplicationUpdater wyświetla powyższe okno dialogowe w toku instalacji. To samo ustawienie można określić w pliku konfiguracyjnym aktualizacji. Wartość określona za pośrednictwem tej właściwości przesłania ustawienie określone w pliku konfiguracyjnym.
Implementacja
public function get isUnexpectedErrorVisible():Boolean
public function set isUnexpectedErrorVisible(value:Boolean):void
isUpdateInProgress | właściwość |
isUpdateInProgress:Boolean
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Właściwość typu Boolean, która ma wartość true
, jeśli proces aktualizacji jest uruchomiony, a wartość false
w przeciwnym wypadku.
Implementacja
public function get isUpdateInProgress():Boolean
localeChain | właściwość |
localeChain:Array
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Tablica definiująca łańcuch ustawień narodowych stosowany w interfejsie użytkownika. Zazwyczaj z właściwości tej korzystają tylko programiści posługujący się językiem JavaScript (HTML).
W środowisku Flex do obsługi łańcucha ustawień narodowych można używać menedżera zasobów.
Domyślnie w aplikacjach opartych na języku HTML języki są podzielone na grupę języków wymienionych w tablicy Capabilities.languages
i grupę dziesięciu języków obsługiwanych przez interfejs użytkownika. Jeśli nie zostanie znaleziony zgodny język, w interfejsie użytkownika stosowany jest język angielski.
W tym przykładzie, napisanym w języku JavaScript, zastosowano architekturę lokalizacji HTML środowiska AIR, wchodzącą w skład pakietu SDK środowiska AIR. Aplikacja sortuje języki, porównując języki dostępne z listą wszystkich języków, a następnie wskazuje angielski jako domyślny język obowiązujący w razie nieznalezienia języka lokalnego:
appUpdater.addResources("ro_RO", {titleCheck: "Titlu", msgCheck: "Mesaj", btnCheck: "Buton"}); appUpdater.addResources("hu", {titleCheck: "Cím", msgCheck: "Üzenet"}); var languages = ["ro", "hu"]; languages = languages.concat(air.Capabilities.languages); var sortedLanguages = air.Localizer.sortLanguagesByPreference(languages, air.Capabilities.language, "en-US"); sortedLanguages.push("en-US"); appUpdater.localeChain = sortedLanguages;
Implementacja
public function get localeChain():Array
public function set localeChain(value:Array):void
Powiązane elementy interfejsu API
previousApplicationStorageDirectory | właściwość |
previousApplicationStorageDirectory:File
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Poprzednie położenie katalogu magazynu aplikacji, jeśli zmieniło się po aktualizacji. Położenie katalogu magazynu aplikacji zmienia się po uaktualnieniu, któremu towarzyszy migracja certyfikatu. Jeśli nie ma miejsca migracja certyfikatu, katalog magazynu aplikacji nie ulega zmianie podczas aktualizacji aplikacji. Wówczas ta właściwość przyjmuje wartość null
. Wartość tej właściwości jest przypisywana podczas wywołania metody initialize()
.
Programista może podpisać nową wersję aplikacji AIR nowym certyfikatem, korzystając z opcji -migrate
podczas tworzenia pakietu z plikiem AIR za pomocą programu ADT. Jeśli do podpisania nowej wersji aplikacji AIR użyty został nowy certyfikat, katalog magazynu lokalnego aplikacji zmieni się, gdy użytkownik zainstaluje nową wersję. Ta właściwość umożliwia przeniesienie danych ze starego katalogu magazynu aplikacji do nowego katalogu magazynu aplikacji (File.applicationStorageDirectory
). Więcej informacji zawiera sekcja „Podpisywanie pliku AIR w celu zmiany certyfikatu aplikacji” w rozdziale „Tworzenie aplikacji AIR za pomocą narzędzi wiersza poleceń” podręcznika programowania w środowisku Adobe AIR.
Implementacja
public function get previousApplicationStorageDirectory():File
previousVersion | właściwość |
previousVersion:String
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Poprzednia wersja aplikacji. Wartość tej właściwości jest przypisywana podczas wywołania metody initialize()
. Zwraca numer poprzedniej wersji aplikacji przed uaktualnieniem (wartość przypisana tylko wtedy, gdy właściwość isfirstRun
jest równa true
); w przeciwnym razie przyjmuje wartość null
.
Implementacja
public function get previousVersion():String
updateDescriptor | właściwość |
updateDescriptor:XML
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Treść pliku deskryptora aktualizacji pobranego spod adresu URL aktualizacji. Ta właściwość ma wartość różną od null po wywołaniu przez obiekt Updater zdarzenia updateStatus
.
Implementacja
public function get updateDescriptor():XML
updateURL | właściwość |
updateURL:String
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Położenie pliku deskryptora aktualizacji. Dozwolone jest każde położenie, jakiego można użyć w ścieżce URLRequest. Jest to jedyne ustawienie obowiązkowe wymagane przez obiekt Updater. Adres URL aktualizacji można określić albo za pośrednictwem tej właściwości, albo w pliku konfiguracyjnym. Gdy wartość jest określona na oba sposoby, obiekt Updater przyjmuje wartość przypisaną tej właściwości.
Implementacja
public function get updateURL():String
public function set updateURL(value:String):void
Powiązane elementy interfejsu API
wasPendingUpdate | właściwość |
wasPendingUpdate:Boolean
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Określa, czy istniała aktualizacja odłożona w czasie, nawet jeśli jej instalacja nie powiodła się (true
); false
w przeciwnym wypadku. Obiekt Updater przypisuje wartość tej właściwości podczas wywołania metody initialize()
. Właściwości wasPendingUpdate
i isFirstRun
umożliwiają sprawdzenie, czy instalacja aktualizacji nie powiodła się (wówczas wasPendingUpdate
przyjmuje wartość true
, a isFirstRun
przyjmuje wartość false
).
Implementacja
public function get wasPendingUpdate():Boolean
Powiązane elementy interfejsu API
ApplicationUpdaterUI | () | Konstruktor |
public function ApplicationUpdaterUI()
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Funkcja konstruktora.
addResources | () | metoda |
public function addResources(lang:String, res:Object):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Dynamicznie dodaje nowy pakunek zasobów dla określonego języka. Programiści korzystający z języka JavaScript stosują tę metodę w celu dynamicznego dodawania nowych języków dla okien dialogowych wyświetlanych przez interfejs użytkownika aktualizacji aplikacji. (Programiści korzystający ze środowiska Flex mogą bezpośrednio dodać nowy język do pakunku zasobów „ApplicationUpdaterDialogs”).
Parametry
lang:String — Kod języka (na przykład "ro" w przypadku rumuńskiego).
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
res:Object — Obiekt zawiera klucze i wartości do tłumaczenia. Klucze pochodzą z pliku właściwości języka. W poniższej tabeli wymieniono możliwe klucze (nazwy właściwości).
|
Powiązane elementy interfejsu API
cancelUpdate | () | metoda |
public function cancelUpdate():void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Anuluje proces aktualizacji. Wywołanie tej metody anuluje wszystkie oczekujące operacje pobierania, usuwa wszystkie nie w pełni pobrane pliki i ponownie uruchamia zegar odliczający interwał między sprawdzeniami dostępności aktualizacji.
Proces aktualizacji można anulować w dowolnym momencie, o ile tylko maszyna stanu nie jest w stanie "uninitialized" ani "initializing". Metoda nie wykonuje żadnych czynności, jeśli zostanie wywołana w stanie "uninitialized" lub "initializing".
checkNow | () | metoda |
public function checkNow():void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Rozpoczyna proces aktualizacji. Wywołanie tej metody nie powoduje zatrzymania licznika czasu opóźnienia między sprawdzaniem dostępności aktualizacji; metoda wykrywa jednak uruchomiony proces aktualizacji i pomija bieżącą iterację.
Ta metoda jest wykonywana tylko wtedy, gdy bieżący stan to "Ready".
Wywołanie tej metody może spowodować, że obiekt Updater wywoła następujące zdarzenie:
Zdarzenia
checkForUpdate: — Wywoływane tuż przed rozpoczęciem procesu aktualizacji.
|
initialize | () | metoda |
public function initialize():void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Inicjuje obiekt Updater. Po wywołaniu metoda wykonuje następujące operacje:
-
Inicjuje architekturę aktualizacji i cicho (oraz synchroniczne) instaluje wszelkie oczekujące aktualizacje. Metodę tę należy wywołać w fazie uruchamiania aplikacji, ponieważ może spowodować ponowne jej uruchomienie.
-
Sprawdza, czy istnieje oczekująca (odłożona w czasie) aktualizacja, a jeśli tak, instaluje ją.
-
Jeśli wcześniejsza aktualizacja nie powiodła się, usuwa z pamięci informacje o pliku aktualizacji i o wersji.
-
Jeśli upłynął czas opóźnienia między automatycznym sprawdzaniem dostępności aktualizacji, rozpoczyna aktualizację; w przeciwnym razie uruchamia licznik czasu opóźnienia. Jednak podczas testowania aplikacji za pomocą programu AIR Debug Launcher (ADL) próba zaktualizowania aplikacji spowoduje wygenerowanie wyjątku IllegalOperationError.
Zdarzenia
initialized: — Inicjowanie zostało ukończone.
| |
error: — Wystąpił błąd podczas inicjowania.
|
installFromAIRFile | () | metoda |
public function installFromAIRFile(file:File):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Rozpoczyna proces aktualizacji przy użyciu lokalnego pliku AIR.
Wywołanie tej metody nie odnosi skutku, jeśli trwa już proces aktualizacji (w stanie innym niż "Downloaded"
).
Ta funkcja jest przydatna w aplikacjach, dla których w pliku deskryptora element customUpdateUI
jest ustawiony na true
.
Podczas testowania aplikacji za pomocą aplikacji ADL (AIR Debug Launcher) wywoływanie tej metody powoduje wygenerowanie wyjątku IllegalOperationError.
Parametry
file:File — Lokalny plik AIR do zainstalowania.
|
Zdarzenia
fileUpdateStatus: — Wywoływane po pomyślnym zweryfikowaniu pliku AIR przez obiekt Updater.
| |
updateError: — Wywoływane, gdy wystąpi błąd przy próbie przeanalizowania pliku deskryptora aktualizacji.
|
beforeInstall | Zdarzenie |
air.update.events.UpdateEvent
właściwość UpdateEvent.type =
air.update.events.UpdateEvent.BEFORE_INSTALL
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane tuż przed zainstalowaniem aktualizacji, po wywołaniu metody installUpdate()
. Niekiedy celowe jest uniemożliwienie instalacji na tym etapie, ponieważ użytkownik mógłby utracić wszystkie wyniki pracy po zakończeniu pracy aplikacji wymuszonym w celu zainstalowania aktualizacji.
Wywołanie metody preventDefault()
obiektu zdarzenia powoduje odłożenie instalacji do momentu następnego uruchomienia aplikacji. Po wywołaniu metody preventDefault()
nie jest możliwe uruchomienie jakiegokolwiek następnego procesu aktualizacji w tej sesji aplikacji (poprzez wywołanie metody installUpdate()
lub po automatycznym okresowym sprawdzeniu).
UpdateEvent.BEFORE_INSTALL
definiuje wartość właściwości type
obiektu zdarzenia beforeInstall
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
bubbles | false |
cancelable | false ; nie ma domyślnego zachowania, które można byłoby anulować. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
target | Obiekt Updater. |
checkForUpdate | Zdarzenie |
air.update.events.UpdateEvent
właściwość UpdateEvent.type =
air.update.events.UpdateEvent.CHECK_FOR_UPDATE
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane przed rozpoczęciem procesu aktualizacji, tuż zanim obiekt Updater podejmie próbę pobrania pliku deskryptora aktualizacji. Obiekt Updater może wywołać to zdarzenie w wyniku bezpośredniego wywołania metody checkNow()
lub po upływie czasu odmierzanego przez licznik opóźnienia między sprawdzaniem dostępności aktualizacji.
UpdateEvent.CHECK_FOR_UPDATE
definiuje wartość właściwości type
obiektu zdarzenia checkForUpdate
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
bubbles | false |
cancelable | false ; nie ma domyślnego zachowania, które można byłoby anulować. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
target | Obiekt Updater. |
downloadComplete | Zdarzenie |
air.update.events.UpdateEvent
właściwość UpdateEvent.type =
air.update.events.UpdateEvent.DOWNLOAD_COMPLETE
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane po ukończeniu pobierania pliku aktualizacji.
StałaUpdateEvent.DOWNLOAD_COMPLETE
definiuje wartość właściwości type
obiektu zdarzenia downloadComplete
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
bubbles | false |
cancelable | false ; nie ma domyślnego zachowania, które można byłoby anulować. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
target | Obiekt Updater. |
downloadError | Zdarzenie |
air.update.events.DownloadErrorEvent
właściwość DownloadErrorEvent.type =
air.update.events.DownloadErrorEvent.DOWNLOAD_ERROR
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane, jeśli podczas nawiązywania połączenia lub pobierania pliku aktualizacji wystąpi błąd. To zdarzenie jest także wywoływane w wypadku odebrania niepoprawnego statusu HTTP (np. „404 - nie znaleziono pliku”).
Z chwilą wywołania tego zdarzenia automatycznie uruchamiany jest licznik czasu (jeśli opóźnienie jest większe od 0).
StałaDownloadErrorEvent.DOWNLOAD_ERROR
definiuje wartość właściwości type
obiektu zdarzenia downloadError
.
Właściwość errorID
obiektu DownloadErrorEvent jest liczbą całkowitą definiującą informacje o błędzie (zob. poniższą tabelę). Dodatkowa właściwość subErrorID
może zawierać dalsze informacje o błędzie.
Kod błędu errorID | Opis |
---|---|
16800 | Występuje podczas weryfikacji pobranego pliku aktualizacji. Właściwość subErrorID może zawierać dodatkowe informacje. |
16801 | Niepoprawny plik Adobe AIR (brak pliku application.xml). |
16802 | Niepoprawny plik Adobe AIR (brak typu MIME). |
16803 | Niepoprawny plik Adobe AIR (format). |
16804 | Niepoprawny plik Adobe AIR (niepoprawne znaczniki). |
16805 | Niepoprawny plik Adobe AIR (nieznany format kompresji). |
16806 | Niepoprawny plik Adobe AIR (niepoprawna nazwa pliku). |
16807 | Niepoprawny plik Adobe AIR (uszkodzony). |
16808 | Plik konfiguracyjny nie istnieje. |
16809 | Właściwość updateURL nie jest ustawiona. |
16810 | Zarezerwowany. |
16811 | Niepoprawny plik konfiguracyjny (nieznana wersja konfiguracji). |
16812 | Niepoprawny plik konfiguracyjny (brak adresu URL). |
16813 | Niepoprawny plik konfiguracyjny (format opóźnienia). |
16814 | Niepoprawny plik konfiguracyjny (niepoprawne wartości defaultUI). |
16815 | Niepoprawny deskryptor aktualizacji (nieznana wersja deskryptora). |
16816 | Niepoprawny deskryptor aktualizacji (brak wersji aktualizacji). |
16817 | Niepoprawny deskryptor aktualizacji (niepoprawny opis). |
16818 | Błąd wejścia/wyjścia podczas zapisywania danych na dysku. Więcej informacji można uzyskać na podstawie wartości właściwości subErrorID . |
16819 | Błąd zabezpieczeń podczas pobierania. Więcej informacji można uzyskać na podstawie wartości właściwości subErrorID . |
16820 | Niepoprawny kod statusu HTTP. Możliwe, że właściwość subErrorID zawiera niepoprawny kod statusu. |
16821 | Zarezerwowany. |
16822 | Błąd wejścia/wyjścia podczas pobierania. Więcej informacji można uzyskać na podstawie wartości właściwości subErrorID . |
16823 | Błąd końca pliku podczas zapisywania danych na dysku. Więcej informacji można uzyskać na podstawie wartości właściwości subErrorID . |
16824 | Niepoprawny deskryptor aktualizacji. Więcej informacji można uzyskać na podstawie wartości właściwości subErrorID . |
16825 | Plik aktualizacji zawiera aplikację z innym identyfikatorem. |
16826 | Plik aktualizacji nie zawiera nowszej wersji aplikacji. |
16827 | Wersja zapisana w pliku aktualizacji jest różna od wersji w deskryptorze aktualizacji. |
16828 | Zaktualizowanie aplikacji nie jest możliwe; zwykle wynika to z faktu, że aplikacja jest uruchomiona wewnątrz programu AIR Debug Launcher (ADL). |
16829 | Brak pliku aktualizacji podczas instalowania. |
downloadStart | Zdarzenie |
air.update.events.UpdateEvent
właściwość UpdateEvent.type =
air.update.events.UpdateEvent.DOWNLOAD_START
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane po wywołaniu metody downloadUpdate()
i nawiązaniu połączenia z serwerem. W przypadku użycia biblioteki ApplicationUpdater często stosowanym rozwiązaniem jest wyświetlanie paska postępu pobierania w procedurze obsługi tego zdarzenia.
UpdateEvent.DOWNLOAD_START
definiuje wartość właściwości type
obiektu zdarzenia downloadStart
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
bubbles | false |
cancelable | false ; nie ma domyślnego zachowania, które można byłoby anulować. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
target | Obiekt Updater. |
error | Zdarzenie |
flash.events.ErrorEvent
właściwość ErrorEvent.type =
flash.events.ErrorEvent.ERROR
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane, gdy wystąpi błąd podczas inicjowania lub podczas procesu aktualizacji (w razie zajścia nieoczekiwanego zdarzenia).
Definiuje wartość właściwościtype
obiektu zdarzenia error
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
bubbles | false |
cancelable | false ; nie ma domyślnego zachowania, które można byłoby anulować. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
target | Obiekt, w którym wystąpiło niepowodzenie operacji sieciowej. |
text | Tekst, który ma być wyświetlany w charakterze komunikatu o błędzie. |
fileUpdateError | Zdarzenie |
air.update.events.StatusFileUpdateErrorEvent
właściwość StatusFileUpdateErrorEvent.type =
air.update.events.StatusFileUpdateErrorEvent.FILE_UPDATE_ERROR
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane, gdy wystąpi błąd podczas weryfikacji pliku przekazanego jako parametr airFile
w wywołaniu metody installFromAIRFile()
.
StatusUpdateErrorEvent.UPDATE_ERROR
definiuje wartość właściwości type
obiektu zdarzenia statusUpdateError
.
fileUpdateStatus | Zdarzenie |
air.update.events.StatusFileUpdateEvent
właściwość StatusFileUpdateEvent.type =
air.update.events.StatusFileUpdateEvent.FILE_UPDATE_STATUS
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane po tym, jak obiekt Updater pomyślnie zweryfikuje plik w wywołaniu metody installFromAIRFile()
.
StatusUpdateEvent.UPDATE_STATUS
definiuje wartość właściwości type
obiektu zdarzenia updateStatus
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
available | Określa, czy jest dostępna wersja inna niż wersja bieżącej aplikacji (true ); false w przeciwnym wypadku (ta sama wersja). |
path | Właściwość nativePath obiektu File aktualizacji określonego przez parametr airFile w wywołaniu metody installFromAIRFile() . |
version | Określa wersję nowej aktualizacji. |
initialized | Zdarzenie |
air.update.events.UpdateEvent
właściwość UpdateEvent.type =
air.update.events.UpdateEvent.INITIALIZED
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane po zakończeniu inicjowania.
To zdarzenie ma następujące właściwości przeznaczone tylko do odczytu:
-
isFirstRun
(Boolean)true
, jeśli jest to pierwsze uruchomienie po pomyślnej aktualizacji;false
w przeciwnym wypadku. -
previousVersion
(String) Poprzednia wersja aplikacji przed uaktualnieniem (wartość przypisywana tylko wtedy, gdyisfirstRun
ma wartośćtrue
). -
currentVersion
(String) Wersja odczytana z pliku deskryptora obecnie zainstalowanej wersji aplikacji.
UpdateEvent.INITIALIZED
definiuje wartość właściwości type
obiektu zdarzenia initialized
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
bubbles | false |
cancelable | false ; nie ma domyślnego zachowania, które można byłoby anulować. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
target | Obiekt Updater. |
progress | Zdarzenie |
flash.events.ProgressEvent
właściwość ProgressEvent.type =
flash.events.ProgressEvent.PROGRESS
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane w chwili pobrania pliku aktualizacji.
Definiuje wartość właściwościtype
obiektu zdarzenia progress
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
bubbles | false |
bytesLoaded | Liczba elementów lub bajtów załadowanych w momencie, w którym detektor przetwarza zdarzenie. |
bytesTotal | Łączna liczba elementów lub bajtów, które zostaną ostatecznie załadowane w razie pomyślnego zakończenia operacji ładowania. |
cancelable | false ; nie ma domyślnego zachowania, które można byłoby anulować. |
currentTarget | Obiekt przetwarzający aktywnie obiekt Event za pomocą detektora zdarzeń. |
target | Obiekt informujący o postępie. |
updateError | Zdarzenie |
air.update.events.StatusUpdateErrorEvent
właściwość StatusUpdateErrorEvent.type =
air.update.events.StatusUpdateErrorEvent.UPDATE_ERROR
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane, gdy wystąpi błąd przy próbie pobrania lub przeanalizowania pliku deskryptora aktualizacji.
Gdy obiekt Updater wywoła to zdarzenie, automatycznie uruchamiany jest licznik czasu (jeśli opóźnienie jest ustawione na wartość większą niż 0). Wskazane jest, aby aplikacja ukrywała wszelkie okna dialogowe błędów, gdy obiekt Updater wywoła nowe zdarzenie checkForUpdate
.
StatusUpdateErrorEvent.UPDATE_ERROR
definiuje wartość właściwości type
obiektu zdarzenia statusUpdateError
.
updateStatus | Zdarzenie |
air.update.events.StatusUpdateEvent
właściwość StatusUpdateEvent.type =
air.update.events.StatusUpdateEvent.UPDATE_STATUS
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.5 |
Wywoływane po tym, jak obiekt Updater pomyślnie pobierze i zinterpretuje plik deskryptora aktualizacji.
StałaStatusUpdateEvent.UPDATE_STATUS
definiuje wartość właściwości type
obiektu zdarzenia updateStatus
.
To zdarzenie ma następujące właściwości:
Właściwość | Wartość |
---|---|
available | Ustawiana na true , jeśli w pliku deskryptora aktualizacji jest określona wersja różna od wersji bieżącej aplikacji; false w przeciwnym wypadku (ta sama wersja). |
version | Ciąg znaków reprezentujący nową dostępną wersję. |
details | Tablica definiująca ciąg znaków details dla każdego z obsługiwanych języków. W wypadku braku zlokalizowanego opisu właściwość ta jest tablicą, której pierwszym elementem jest pusty ciąg znaków ("" ), natomiast drugim elementem jest ciąg znaków ze szczegółami. Gdy istnieją zlokalizowane opisy, każdy element tablicy jest tablicą dwuelementową. Pierwszy element to kod ustawień narodowych, a drugi element to opis. Na przykład następująca tablica zawiera podtablice dla dwóch języków (angielskiego amerykańskiego oraz francuskiego): ["en-US", "Hello World"], ["fr", "Bonjour monde"] . Języki są wymienione w tej samej kolejności co w deskryptorze aktualizacji. W pliku deskryptora aktualizacji jest podany tekst właściwości details. |
versionLabel | (AIR 2.5 i nowsze wersje) Etykieta wersji z deskryptora aplikacji aktualizacji. Etykieta wersji powinna być przedstawiana użytkownikom zamiast wersji. Jeśli nie określono etykiety wersji, ta właściwość jest pustym ciągiem. |
Tue Jun 12 2018, 12:06 PM Z