Pakket | flash.desktop |
Klasse | public final class Updater |
Overerving | Updater Object |
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0 |
update()
ervan aan om dit te gebruiken.
De Updater-klasse wordt alleen ondersteund in het bureaubladprofiel. De klasse wordt niet ondersteund voor uitgebreide bureaubladtoepassingen (toepassingen die met een native installatieprogramma zijn geïnstalleerd) en ook niet in het mobiele profiel van AIR of in AIR for TV-profielen. Controleer de Updater.isSupported
-eigenschap.
Uitgebreide bureaubladtoepassingen (toepassingen die met een eigen installatieprogramma zijn geïnstalleerd) kunnen een nieuwe versie van het eigen installatieprogramma downloaden en starten met de File.openWithDefaultApplication()
-methode.
Verwante API-elementen
Eigenschap | Gedefinieerd door | ||
---|---|---|---|
constructor : Object
Verwijzing naar het klasseobject of de constructorfunctie van een bepaalde objectinstantie. | Object | ||
isSupported : Boolean [statisch] [alleen-lezen]
De eigenschap isSupported wordt ingesteld op true als de Updater-klasse op het huidige platform beschikbaar is. Als dit niet het geval is, wordt de eigenschap ingesteld op false. | Updater |
Methode | Gedefinieerd door | ||
---|---|---|---|
Updater()
De constructorfunctie voor de klasse Updater. | Updater | ||
Geeft aan of voor een object een opgegeven eigenschap is gedefinieerd. | Object | ||
Geeft aan of een instantie van de klasse Object zich in de prototypeketen van het object bevindt dat als parameter is opgegeven. | Object | ||
Geeft aan of de opgegeven eigenschap bestaat en kan worden opgesomd. | Object | ||
Stelt de beschikbaarheid van een dynamische eigenschap voor lusbewerkingen in. | Object | ||
Geeft de tekenreeksweergave van dit object weer, geformatteerd volgens de locatiespecifieke conventies. | Object | ||
Retourneert een tekenreeksrepresentatie van het opgegeven object. | Object | ||
Hiermee wordt de toepassing die momenteel wordt uitgevoerd bijgewerkt met de versie van de toepassing die in het opgegeven AIR-bestand is opgenomen. | Updater | ||
Retourneert de primitieve waarde van het opgegeven object. | Object |
isSupported | eigenschap |
isSupported:Boolean
[alleen-lezen] Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 2 |
De eigenschap isSupported
wordt ingesteld op true
als de Updater-klasse op het huidige platform beschikbaar is. Als dit niet het geval is, wordt de eigenschap ingesteld op false
.
Implementatie
public static function get isSupported():Boolean
Updater | () | Constructor |
public function Updater()
Runtimeversies: | AIR 1.0 |
De constructorfunctie voor de klasse Updater. De methode update()
is geen statisch lid van de klasse. Instantieer een object Updater en roep vervolgens hierop de methode update()
aan.
update | () | methode |
public function update(airFile:File, version:String):void
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0 |
Hiermee wordt de toepassing die momenteel wordt uitgevoerd bijgewerkt met de versie van de toepassing die in het opgegeven AIR-bestand is opgenomen. De toepassing in het AIR-bestand moet dezelfde toepassingsidentificatie hebben (appID
) als de toepassing die momenteel wordt uitgevoerd.
Door deze methode aan te roepen wordt de huidige toepassing afgesloten (zoals wanneer de methode NativeApplication.exit()
wordt aangeroepen). Dit is noodzakelijk omdat Adobe AIR een toepassing niet volledig kan bijwerken terwijl deze toepassing wordt uitgevoerd. De toepassing wordt opnieuw gestart zodra de nieuwe versie van de toepassing is geïnstalleerd. Als de nieuwe versie niet door de runtime kan worden geïnstalleerd (bijvoorbeeld wanneer de toepassings-id niet met de bestaande versie overeenstemt), geeft het AIR-installatieprogramma een foutmelding aan de gebruiker en wordt de oude versie opnieuw gestart.
De toepassing wordt door de updateprocedure opnieuw gestart ongeacht of de update is gelukt of niet. Updates kunnen mislukken om verschillende redenen, waaronder enkele die niet door de toepassing kunnen worden gecontroleerd (bijvoorbeeld een gebruiker die over onvoldoende rechten beschikt om een toepassing te installeren). Toepassingen moeten mislukte pogingen detecteren en vermijden dat dezelfde mislukte updatepoging herhaaldelijk wordt uitgevoerd. De oneindige lus die daaruit volgt zou de toepassing onbruikbaar maken. Een manier om te controleren of een update is geslaagd, is door het huidige versienummer naar een bestand te schrijven voordat de update wordt gestart, en dit vervolgens met het versienummer te vergelijken wanneer de toepassing opnieuw wordt gestart.
Wanneer u een toepassing test met de toepassing AIR Debug Launcher (ADL), leidt het aanroepen van de methode update()
tot de uitzondering IllegalOperationError.
Als een gebruiker in Mac OS een bijgewerkte versie van een toepassing wil installeren, moet de gebruiker over voldoende systeemrechten beschikken om naar de toepassingsdirectory te kunnen installeren. In Windows of Linux moet de gebruiker over beheerdersrechten beschikken.
Als de bijgewerkte versie van de toepassing een bijgewerkte versie van de runtime vereist, wordt de nieuwe runtime-versie geïnstalleerd. Een gebruiker moet over beheerdersrechten op de computer beschikken om de runtime te kunnen updaten.
Opmerking: Om beveiligingsredenen is het noodzakelijk om de parameter version
op te geven. Doordat de toepassing gedwongen is het versienummer in het AIR-bestand te controleren, kan de toepassing niet per ongeluk een oudere versie installeren die mogelijk een beveiligingsrisico bevat dat werd gecorrigeerd.
Parameters
airFile:File — Het object File dat het AIR-bestand aanwijst waarin de bijgewerkte versie van de toepassing is opgenomen.
| |
version:String — De vereiste versie in het nieuwe AIR-bestand. Om de update met succes te kunnen voltooien moet de tekenreeks in het kenmerk version van het hoofdelement application van het toepassingsbeschrijvingsbestand voor het AIR-bestand met deze waarde overeenstemmen.
|
Gegenereerde uitzondering
IllegalOperationError — De methode werd aangeroepen tijdens het uitvoeren in ADL.
|
Verwante API-elementen
Voorbeeld ( Hoe dit voorbeeld te gebruiken )
update()
is geen statische methode van de klasse. Instantieer een object Updater en roep vervolgens de methode update()
ervan aan.
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);
Wed Jun 13 2018, 11:42 AM Z