Komprimieren eines nativen Desktopinstallationsprogramms

Ab AIR 2 können Sie mit ADT native Anwendungsinstallationsprogramme für die Verteilung von AIR-Anwendungen erstellen. Sie können zum Beispiel eine EXE-Installerdatei für die Verteilung einer AIR-Anwendung unter Windows erstellen. Für die Verteilung einer AIR-Anwendung unter Mac OS können Sie eine DMG-Installerdatei erstellen. Soll die AIR-Anwendung unter Linux verteilt werden, können Sie eine DEB- oder RPM-Installerdatei erstellen.

Anwendungen, die mit einem nativen Anwendungsinstallationsprogramm installiert werden, werden als Anwendungen mit erweitertem Desktopprofil bezeichnet. Sie können ADT nicht verwenden, um ein natives Installationsprogramm für eine AIR-Anwendung zu komprimieren, wenn die Anwendungsdeskriptordatei das erweiterte Desktopprofil nicht unterstützt. Sie können dieses Profil mithilfe des supportedProfiles-Element in der Anwendungsdeskriptordatei beschränken. Siehe Geräteprofile und supportedProfiles.

Es gibt zwei grundlegende Möglichkeiten, eine native Installerversion einer AIR-Anwendung zu erstellen:

  • Sie können das native Installationsprogramm basierend auf der Anwendungsdeskriptordatei und anderer Quelldateien erstellen. (Andere Quelldateien sind zum Beispiel SWF-Dateien, HTML-Dateien und andere Bestände.)

  • Sie können das native Installationsprogramm basierend auf einer AIR-Datei oder auf einer AIRI-Datei erstellen.

Sie müssen ADT auf demselben Betriebssystem verwenden, das der nativen Installerdatei entspricht, die Sie generieren möchten. Wenn Sie eine EXE-Datei für Windows erstellen möchten, führen Sie ADT also unter Windows aus. Um eine DMG-Datei für Mac OS zu erstellen, führen Sie ADT unter Mac OS aus. Um eine DEB- oder RPG-Datei für Linux zu erstellen, führen Sie ADT unter Linux aus.

Wenn Sie ein natives Installationsprogramm erstellen, um eine AIR-Anwendung zu verteilen, werden der Anwendung die folgenden Fähigkeiten hinzugefügt:

  • Sie kann native Prozesse starten und damit interagieren, wofür die NativeProcess-Klasse verwendet wird. Ausführliche Informationen dazu finden Sie hier:
  • Sie kann die File.openWithDefaultApplication()-Methode für jede Datei aufrufen, um sie unabhängig vom Dateityp mit dem im System definierten Standardprogramm zu öffnen. (Es gibt Einschränkungen für Anwendungen, die nicht mit einem nativen Installationsprogramm installiert werden. Weitere Informationen finden Sie unter dem Eintrag für File.openWithDefaultApplication() im Referenzhandbuch.)

Beim Verpacken als natives Installationsprogramm gehen jedoch einige Vorteile des AIR-Formats verloren. Eine einzelne Datei kann nicht mehr an alle Desktopcomputer verteilt werden. Die integrierte Updatefunktion (sowie das Updater-Framework) funktionieren nicht.

Wenn der Benutzer auf die native Installerdatei doppelklickt, wird die AIR-Anwendung installiert. Falls die erforderliche Version von Adobe AIR noch nicht auf dem Computer installiert ist, lädt das Installationsprogramm sie aus dem Netzwerk herunter und installiert sie zuerst. Sollte es keine Netzwerkverbindung geben, über die die richtige Version Adobe AIR heruntergeladen werden kann (falls erforderlich), schlägt die Installation fehl. Die Installation schlägt auch fehl, wenn das Betriebssystem in Adobe AIR 2 nicht unterstützt wird.

Hinweis: Wenn eine Datei in der installierten Anwendung ausführbar sein soll, muss sie im Dateisystem ausführbar sein, wenn Sie die Anwendung verpacken. (Unter Mac und Linux können Sie das Flag für eine ausführbare Datei bei Bedarf mithilfe des chmod-Befehls festlegen.)

Erstellen eines nativen Installationsprogramms aus den Anwendungsquelldateien

Um ein natives Installationsprogramm aus den Quelldateien für die Anwendung zu erstellen, verwenden Sie den -package-Befehl mit der folgenden Syntax (in einer einzelnen Befehlszeile):

adt -package AIR_SIGNING_OPTIONS-target native [WINDOWS_INSTALLER_SIGNING_OPTIONS] installer_fileapp_xml [file_or_dir | -C dir file_or_dir | -e file dir ...] ...

Diese Syntax ähnelt der Syntax zum Komprimieren einer AIR-Datei (ohne natives Installationsprogramm). Es gibt jedoch einige Unterschiede:

  • Sie fügen dem Befehl die Option -target native hinzu. (Wenn Sie -target air angeben, generiert ADT eine AIR-Datei anstatt einer nativen Installerdatei.)

  • Sie geben die DMG- oder EXE-Datei als installer_file an.

  • Unter Windows können Sie optional einen zweiten Satz von Signaturoptionen hinzufügen, die als [WINDOWS_INSTALLER_SIGNING_OPTIONS] in der Syntax aufgeführt werden. Unter Windows können Sie nicht nur die AIR-Datei, sonder auch die Windows-Installerdatei signieren. Verwenden Sie denselben Zertifikattyp und dieselbe Syntax für die Signaturoption wie beim Signieren der AIR-Datei (siehe ADT-Optionen zum Signieren von Code). Sie können die AIR-Datei und die Installerdatei mit demselben Zertifikat signieren oder unterschiedliche Zertifikate angeben. Wenn ein Benutzer eine signierte Windows-Installerdatei aus dem Internet herunterlädt, identifiziert Windows die Quelle der Datei anhand des Zertifikats.

Ausführliche Informationen zu den ADT-Optionen, die neben der -target-Option verfügbar sind, finden Sie unter AIR Developer Tool (ADT).

Im folgenden Beispiel wird eine DMG-Datei erstellt (eine native Installerdatei für Mac OS):

adt -package -storetype pkcs12 -keystore myCert.pfx -target native myApp.dmg application.xml index.html resources

Im folgenden Beispiel wird eine EXE-Datei erstellt (eine native Installerdatei für Windows):

adt -package -storetype pkcs12 -keystore myCert.pfx -target native myApp.exe application.xml index.html resources

Im folgenden Beispiel wird eine EXE-Datei erstellt und signiert:

adt -package -storetype pkcs12 -keystore myCert.pfx -target native -storetype pkcs12 -keystore myCert.pfx myApp.exe application.xml index.html resources

Erstellen einer nativen Installerdatei aus einer AIR-Datei oder AIRI-Datei

Sie können ADT verwenden, um eine native Installerdatei zu generieren, die auf einer AIR-Datei oder auf einer AIRI-Datei basiert. Um eine native Installerdatei basierend auf einer AIR-Datei zu erstellen, verwenden Sie den ADT-Befehl -package mit der folgenden Syntax (in einer einzelnen Befehlszeile):

adt -package -target native [WINDOWS_INSTALLER_SIGNING_OPTIONS] installer_file air_file

Diese Syntax ähnelt der Syntax zum Erstellen eines nativen Installationsprogramms basierend auf den Quelldateien für die AIR-Anwendung. Es gibt jedoch einige Unterschiede:

  • Als Quelle geben Sie eine AIR-Datei statt einer Anwendungsdeskriptordatei und anderer Quelldateien für die AIR-Datei an.

  • Geben Sie keine Signaturoptionen für die AIR-Datei an, da sie bereits signiert ist

Um eine native Installerdatei basierend auf einer AIRI-Datei zu erstellen, verwenden Sie den ADT-Befehl -package mit der folgenden Syntax (in einer einzelnen Befehlszeile):

adt AIR_SIGNING_OPTIONS -package -target native [WINDOWS_INSTALLER_SIGNING_OPTIONS] installer_file airi_file

Diese Syntax ähnelt der Syntax zum Erstellen eines nativen Installationsprogramms basierend auf einer AIR-Datei. Es gibt jedoch einige Unterschiede:

  • Als Quelle geben Sie eine AIRI-Datei an.

  • Sie geben Signaturoptionen für die AIR-Zielanwendung an.

Mit dem folgenden Beispiel wird eine DMG-Datei (eine native Installerdatei für Mac OS) basierend auf einer AIR-Datei erstellt:

adt -package -target native myApp.dmg myApp.air

Mit dem folgenden Beispiel wird eine EXE-Datei (eine native Installerdatei für Windows) basierend auf einer AIR-Datei erstellt:

adt -package -target native myApp.exe myApp.air

Mit dem folgenden Beispiel wird eine EXE-Datei basierend auf einer AIR-Datei erstellt und signiert:

adt -package -target native -storetype pkcs12 -keystore myCert.pfx myApp.exe myApp.air

Mit dem folgenden Beispiel wird eine DMG-Datei (eine native Installerdatei für Mac OS) basierend auf einer AIRI-Datei erstellt:

adt -storetype pkcs12 -keystore myCert.pfx -package -target native myApp.dmg myApp.airi

Mit dem folgenden Beispiel wird eine EXE-Datei (eine native Installerdatei für Windows) basierend auf einer AIRI-Datei erstellt:

adt -storetype pkcs12 -keystore myCert.pfx -package -target native myApp.exe myApp.airi

Im folgenden Beispiel wird eine EXE-Datei (basierend auf einer AIRI-Datei) erstellt und sowohl mit einer AIR- als auch mit einer nativen Windows-Signatur signiert:

adt -package -storetype pkcs12 -keystore myCert.pfx -target native -storetype pkcs12 -keystore myCert.pfx myApp.exe myApp.airi