Mise en package d’un programme d’installation natif de bureau

Depuis AIR 2, vous pouvez créer, à l’aide de l’outil ADT, des programmes d’installation d’application natifs destinés à distribuer des applications AIR. Vous pouvez, par exemple, créer un fichier d’installation EXE pour distribuer une application AIR sous Windows, un fichier d’installation DMG pour distribuer une application AIR sur Mac OS et, dans AIR 2.5 et AIR 2.6, un fichier d’installation DEB ou RPM pour distribuer une application AIR sous Linux.

Les applications installées par le biais d’un programme d’installation natif font partie du profil de bureau étendu. Il est impossible d’utiliser l’outil ADT pour mettre en package un programme d’installation natif destiné à une application AIR si le fichier descripteur correspondant ne prend pas en charge le profil étendu de bureau. Vous pouvez restreindre l’utilisation de ce profil à l’aide de l’élément supportedProfiles dans le fichier descripteur de l’application. Voir Profils de périphérique et supportedProfiles.

Vous disposez de deux techniques de base pour créer une version du programme d’installation natif de l’application AIR :

  • Vous pouvez créer le programme d’installation natif à partir du fichier descripteur de l’application et d’autres fichiers sources (à savoir, des fichiers SWF, des fichiers HTML et d’autres actifs).

  • Vous pouvez fonder le programme d’installation natif sur un fichier AIR ou un fichier AIRI.

Vous devez utiliser l’outil ADT sur le même système d’exploitation que celui du programme d’installation à créer. Par conséquent, pour créer un fichier EXE pour Windows, exécutez l’outil ADT sous Windows. Pour créer un fichier DMG pour Mac OS, exécutez l’outil ADT sur Mac OS. Pour créer un fichier DEB ou RPG pour Linux, exécutez l’outil ADT à partir du kit SDK d’AIR 2.6 sous Linux.

Lorsque vous créez un programme d’installation natif pour distribuer une application AIR, celle-ci possède les fonctionnalités suivantes :

  • Elle peut lancer des processus natifs et communiquer avec eux, par le biais de la classe NativeProcess. Pour plus d’informations, voir :
  • Elle peut faire appel à des extensions natives.

  • Elle peut ouvrir tout fichier dans l’application système définie par défaut à cet effet à l’aide de la méthode File.openWithDefaultApplication(), quel que soit le type du fichier. (Les applications qui ne sont pas installées à l’aide d’un programme d’installation natif sont soumises à des restrictions. Pour plus d’informations, voir l’entrée File.openWithDefaultApplication() dans la référence du langage.)

La mise en package sous forme de programme d’installation natif entraîne toutefois la perte de certains avantages qui caractérisent le format de fichier AIR. Il est alors impossible de distribuer un fichier unique sur tous les ordinateurs de bureau. La fonction de mise à jour intégrée (ainsi que la structure du programme de mise à jour) ne fonctionnent pas.

Lorsque l’utilisateur double-clique sur le fichier du programme d’installation natif, l’application AIR est installée. Si la version requise d’Adobe AIR n’est pas déjà installée sur la machine, le programme d’installation la télécharge du réseau et l’installe. En l’absence d’une connexion réseau permettant d’obtenir la version appropriée d’Adobe AIR (si nécessaire), l’installation échoue. L’installation échoue également si le système d’exploitation n’est pas pris en charge dans Adobe AIR 2.

Remarque : si vous souhaitez qu’un fichier puisse être exécuté dans l’application installée, assurez-vous qu’il est exécutable sur le système de fichiers lors de la mise en package de l’application. (Sous Mac et Linux, vous disposez de chmod pour définir l’indicateur exécutable, le cas échéant.)

Création d’un programme d’installation natif à partir des fichiers sources de l’application

Pour créer un programme d’installation natif à partir des fichiers sources de l’application, utilisez la commande -package en respectant la syntaxe suivante (sur une même ligne de commande) :

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

La syntaxe est identique à celle permettant de mettre en package un fichier AIR (sans programme d’installation natif), à quelques exceptions près :

  • Vous ajoutez l’option -target native à la commande. (Si vous spécifiez -target air, l’outil ADT génère un fichier AIR plutôt qu’un fichier d’installation natif.)

  • Vous spécifiez le fichier DMG ou EXE cible en tant que fichier de programme d’installation (installer_file).

  • Sous Windows, vous pouvez ajouter un deuxième jeu d’options de signature, indiquées sous la forme [WINDOWS_INSTALLER_SIGNING_OPTIONS] dans la syntaxe. Cette étape est facultative. Sous Windows, outre la signature du fichier AIR, vous pouvez signer le fichier d’installation. Utilisez la même syntaxe pour définir le type de certificat et l’option de signature que pour signer le fichier AIR (voir Options de signature du code de l’outil ADT). Vous pouvez signer le fichier AIR et le fichier d’installation à l’aide d’un même certificat ou de certificats différents. Lorsque l’utilisateur télécharge un fichier d’installation Windows signé du Web, Windows se fonde sur le certificat pour identifier la source du fichier.

Pour plus d’informations sur les options ADT autres que -target, voir Outil AIR Developer (ADT).

L’exemple suivant crée un fichier DMG (fichier d’installation natif réservé à Mac OS) :

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

L’exemple suivant crée un fichier EXE (fichier d’installation natif réservé à Windows) :

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

L’exemple suivant crée un fichier EXE et le signe :

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

Création d’un programme d’installation natif pour une application faisant appel à des extensions natives

Vous pouvez créer un programme d’installation natif à partir des fichiers sources de l’application et des packages d’extensions natives dont l’application a besoin. Utilisez la commande -package en respectant la syntaxe suivante (sur une seule ligne de commande) :

adt -package AIR_SIGNING_OPTIONS 
    -migrate MIGRATION_SIGNING_OPTIONS 
    -target native 
    [WINDOWS_INSTALLER_SIGNING_OPTIONS] 
    installer_file 
    app_xml 
    -extdir extension-directory 
    [file_or_dir | -C dir file_or_dir | -e file dir ...] ...

Cette syntaxe est identique à celle utilisée pour la mise en package d’un programme d’installation natif, avec deux options supplémentaires. Utilisez l’option -extdir extension-directory en vue de spécifier le répertoire contenant les fichiers ANE (extensions natives) qu’utilise l’application. Utilisez l’indicateur facultatif -migrate avec les paramètres MIGRATION_SIGNING_OPTIONS en vue de signer la mise à jour d’une application avec une signature de migration lorsque le certificat principal de signature de code est différent de celui utilisé par la version précédente. Pour plus d’informations, voir Signature d’une version mise à jour d’une application AIR.

Pour plus d’informations sur les options d’ADT, voir Outil AIR Developer (ADT).

L’exemple suivant crée un fichier DMG (fichier de programme d’installation pour Mac OS) pour une application faisant appel à des extensions natives :

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

Création d’un programme d’installation natif à partir d’un fichier AIR ou AIRI

L’outil ADT permet de générer un fichier d’installation natif à partir d’un fichier AIR ou AIRI. Pour créer un fichier d’installation natif à partir d’un fichier AIR, utilisez la commande -package de l’outil ADT en respectant la syntaxe suivante (sur une même ligne de commande) :

adt -package 
    -target native 
    [WINDOWS_INSTALLER_SIGNING_OPTIONS] 
    installer_file 
    air_file

Cette syntaxe est identique à celle permettant de créer un fichier d’installation natif à partir des fichiers sources de l’application AIR, à quelques exceptions près :

  • Comme source, vous spécifiez un fichier AIR, et non un fichier descripteur d’application et d’autres fichiers sources de l’application AIR.

  • Ne spécifiez pas d’options de signature du fichier AIR car il est déjà signé.

Pour créer un fichier d’installation natif à partir d’un fichier AIRI, utilisez la commande -package de l’outil ADT en respectant la syntaxe suivante (sur une même ligne de commande) :

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

Cette syntaxe est identique à celle permettant de créer un fichier d’installation natif à partir d’un fichier AIR, à quelques exceptions près :

  • Vous spécifiez un fichier AIRI comme source.

  • Vous spécifiez des options de signature pour l’application AIR cible.

L’exemple suivant crée un fichier DMG (fichier d’installation natif sur Mac OS) à partir d’un fichier AIR :

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

L’exemple suivant crée un fichier EXE (fichier d’installation natif sous Windows) à partir d’un fichier AIR :

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

L’exemple suivant crée un fichier EXE (à partir d’un fichier AIR) et le signe :

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

L’exemple suivant crée un fichier DMG (fichier d’installation natif sur Mac OS) à partir d’un fichier AIRI :

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

L’exemple suivant crée un fichier EXE (fichier d’installation natif sous Windows) à partir d’un fichier AIRI :

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

L’exemple suivant crée un fichier EXE (basé sur un fichier AIRI) et applique une signature AIR et une signature Windows native :

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