Pakiet | flash.desktop |
Klasa | public final class Updater |
Dziedziczenie | Updater Object |
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0 |
update()
.
Klasa Updater 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ą macierzystego instalatora). Nie jest również obsługiwana w profilu AIR urządzeń przenośnych ani w profilach urządzeń telewizyjnych ze środowiskiem AIR. Sprawdź właściwość Updater.isSupported
.
Aplikacja z rozszerzonym profilem aplikacji lokalnej (aplikacja instalowana za pomocą rodzimego instalatora) może pobrać nową wersję rodzimego instalatora i uruchomić ją za pomocą metody File.openWithDefaultApplication()
.
Powiązane elementy interfejsu API
Właściwość | Zdefiniowane przez | ||
---|---|---|---|
constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | ||
isSupported : Boolean [statyczny] [tylko do odczytu]
Właściwość isSupported ma wartość true, jeśli na bieżącej platformie jest dostępna klasa Updater; w przeciwnym razie ma wartość false. | Updater |
Metoda | Zdefiniowane przez | ||
---|---|---|---|
Updater()
Funkcja konstruktora dla klasy Updater | Updater | ||
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
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 | ||
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 | ||
Uaktualnia obecnie uruchomioną aplikację do wersji aplikacji zawartej w określonym pliku AIR. | Updater | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object |
isSupported | właściwość |
isSupported:Boolean
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 2 |
Właściwość isSupported
ma wartość true
, jeśli na bieżącej platformie jest dostępna klasa Updater; w przeciwnym razie ma wartość false
.
Implementacja
public static function get isSupported():Boolean
Updater | () | Konstruktor |
public function Updater()
Wersje środowiska wykonawczego: | AIR 1.0 |
Funkcja konstruktora dla klasy Updater Należy zauważyć, iż metoda update()
nie jest statycznym członkiem klasy. Konieczne jest utworzenie instancji obiektu Updater oraz wywołania jej metodyupdate()
.
update | () | metoda |
public function update(airFile:File, version:String):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0 |
Uaktualnia obecnie uruchomioną aplikację do wersji aplikacji zawartej w określonym pliku AIR. Aplikacja w pliku AIR musi posiadać ten sam identyfikator aplikacji (appID
), co obecnie uruchomiona aplikacja.
Wywołanie tej metody powoduje zamknięcie obecnej aplikacji (tak, jak w przypadku wywołania metody NativeApplication.exit()
). Jest to konieczne ponieważ aplikacja Adobe AIR nie może w pełni uaktualnić aplikacji w trakcie jej działania. Po pomyślnej instalacji nowej wersji aplikacja jest uruchamiana. Jeżeli środowisko wykonawcze nie może pomyślnie zainstalować nowej wersji (na przykład, jeśli ID aplikacji nie zgadza się z obecną wersją), instalator aplikacji AIR przedstawia komunikat o błędzie i stara wersja aplikacji jest uruchamiana ponownie.
Proces aktualizacji ponownie uruchamia aplikacje bez względu na to, czy aktualizacja zakończyła się pomyślnie. Aktualizacje mogą się nie powieść z różnych powodów, także takich poza kontrolą aplikacji (na przykład niedostatecznych uprawnień użytkownika do instalacji aplikacji). Aplikacje powinny wykrywać niepowodzenia i zapobiegać ponownym próbom nieudanych aktualizacji. Wynikająca niekończąca się pętla efektywnie wyłączyła by aplikację. Jednym ze sposobów sprawdzenia udanej aktualizacji jest zapisanie numeru obecnej wersji do pliku, a następnie porównania go z numerem wersji po ponownym uruchomieniu aplikacji.
Podczas testowania aplikacji za pomocą aplikacji ADL (AIR Debug Launcher), wywoływanie metody update()
powoduje powstanie wyjątku IllegalOperationError.
Aby zainstalować zaktualizowaną wersję aplikacji w systemie operacyjnym Mac OS, użytkownik musi mieć właściwe uprawnienia systemowe do instalacji w katalogu aplikacji. W systemach Windows lub Linux użytkownik musi mieć uprawnienia administratora.
Jeżeli zaktualizowana wersja aplikacji wymaga zaktualizowanej wersji środowiska wykonawczego, wówczas jego nowa wersja jest instalowana. W celu aktualizacji środowiska wykonawczego użytkownik musi posiadać przywileje administracyjne w komputerze.
Uwaga: Podanie parametru version
jest konieczne ze względów bezpieczeństwa. Wymaganie sprawdzenia numeru wersji aplikacji w pliku AIR eliminuje niepożądaną możliwość zainstalowania starszej wersji, która może zawierać luki w systemie bezpieczeństwa, które zostały w nowszej wersji naprawione.
Parametry
airFile:File — Obiekt File wskazujący na plik AIR, który zawiera uaktualnioną wersję aplikacji.
| |
version:String — Wymagana wersja w nowym pliku AIR. Ciąg znaków w atrybucie version głównego elementu application pliku deskryptora aplikacji dla pliku AIR musi być zgodny z tą wartością, aby aktualizacja się powiodła.
|
Zgłasza
IllegalOperationError — Metoda została wywołana w trakcie uruchamiania w ADL.
|
Powiązane elementy interfejsu API
Przykład ( Sposób korzystania z tego przykładu )
update()
nie jest metodą statyczną klasy. Utwórz instancję obiektu Updater i wywołaj metodę update()
obiektu.
import flash.fileSystem.File; import flash.desktop.Updater; var updater:Updater = new Updater(); var airFile:File = File.applicationStorageDirectory.resolvePath("Example Application.air"); var version:String = "2.01"; updater.update(airFile, version);
Tue Jun 12 2018, 12:06 PM Z