Installation et mises à jour

Adobe AIR 1.0 et les versions ultérieures

Les applications AIR sont distribuées par le biais des fichiers du programme d’installation AIR, dotés de l’extension air ou via des programmes d’installation natifs, dotés du format de fichier et de l’extension de la plate-forme native. Ainsi, le format du programme d’installation natif de Windows correspond à EXE, tandis que le format natif d’Android est APK.

Lorsqu’Adobe AIR est installé et qu’un fichier d’installation AIR est ouvert, le moteur d’exécution d’AIR gère le processus d’installation. Si un programme d’installation natif est utilisé, c’est le système d’exploitation qui gère le processus d’installation.

Remarque : les développeurs peuvent spécifier une version, un nom d’application et une source d’éditeur lors de l’utilisation du format de fichier AIR, mais le flux initial de l’installation de l’application lui-même ne peut pas être modifié. Cette restriction est tout à l’avantage des utilisateurs car toutes les applications AIR partagent une procédure d’installation sûre, continue et stable, gérée par le moteur d’exécution. Si une personnalisation de l’application s’avère nécessaire, cela peut se faire lors de sa première exécution.

Emplacement d’installation du moteur d’exécution

Pour les applications AIR qui font appel au format de fichier AIR, il est nécessaire d’installer préalablement le moteur d’exécution sur l’ordinateur d’un utilisateur, de même qu’il est nécessaire d’installer en premier lieu le module d’extension du navigateur Flash Player pour les fichiers SWF.

Le moteur d’exécution est installé à l’emplacement suivant sur un ordinateur de bureau :

  • Mac OS : /Bibliothèque/Frameworks/

  • Windows : C:\Program Files\Common Files\Adobe AIR

  • Linux : /opt/Adobe AIR/

Sous Mac OS, pour installer une version mise à jour d’une application, l’utilisateur doit disposer de privilèges système appropriés pour accéder au répertoire de l’application. S’il utilise Windows ou Linux, l’utilisateur doit disposer de privilèges d’administrateur.

Remarque : sous iOS, le moteur d’exécution d’AIR n’est pas installé séparément, puisque chaque application AIR est autonome.

Le moteur d’exécution peut être installé de deux façons : via la fonction d’installation transparente (installation directe à partir d’un navigateur Web) ou via une installation manuelle. Les applications AIR mises en package sous forme de programmes d’installation natifs peuvent également installer le moteur d’exécution AIR dans le cadre de leur processus d’installation d’application normal. (Ce type de distribution du moteur d’exécution AIR requiert un accord de redistribution avec Adobe.)

Installation transparente (moteur d’exécution et application)

La fonction d’installation transparente fournit aux développeurs une expérience d’installation continue pour les utilisateurs qui n’ont pas encore Adobe AIR sur leur ordinateur. Dans la méthode d’installation transparente, le développeur crée un fichier SWF qui présente l’application à installer. Lorsqu’un utilisateur clique sur le fichier, celui-ci tente de détecter le moteur d’exécution. S’il n’est pas détecté, il est installé et immédiatement activé avec le processus d’installation pour l’application du développeur.

Installation manuelle

D’un autre côté, l’utilisateur peut manuellement télécharger et installer le moteur d’exécution avant d’ouvrir un fichier AIR. Le développeur peut alors distribuer un fichier AIR de différentes façons : par exemple, par e-mail ou un lien HTML sur un site Web. Lorsque le fichier AIR est ouvert, le moteur d’exécution se lance dans l’installation de l’application.

Flux d’installation de l’application

Le modèle de sécurité AIR permet aux utilisateurs de décider s’il y a lieu d’installer une application AIR. L’expérience dans l’installation d’AIR a permis d’apporter plusieurs améliorations par rapport aux technologies d’installation des applications natives, ce qui rend cette décision de confiance plus facile à prendre pour les utilisateurs :

  • Le moteur d’exécution fournit une expérience d’installation stable sur tous les systèmes d’exploitation, même lorsqu’une application AIR est installée à partir d’un lien dans un navigateur Web. La plupart des expériences d’installation des applications dépendent d’un navigateur ou d’une autre application pour fournir des informations sur la sécurité, si encore elles existent.

  • L’expérience d’installation de l’application AIR identifie la source de l’application et les informations sur la nature des privilèges disponibles pour l’application, à condition que l’utilisateur permette à l’installation de se poursuivre.

  • Le moteur d’exécution gère le processus d’installation d’une application AIR. Une application AIR n’est pas en mesure d’intervenir dans le processus d’installation que le moteur d’exécution utilise.

En règle générale, les utilisateurs ne devraient pas installer d’application d’ordinateur de bureau qui provient d’une source à laquelle ils ne font pas confiance ou qui ne peut pas être authentifiée. Le fardeau de la preuve sur la sécurité pour les applications natives est également valable pour les applications AIR comme elle l’est pour d’autres applications à installer.

Destination de l’application

Le répertoire d’installation peut être défini à l’aide de l’une des deux options suivantes :

  1. L’utilisateur personnalise la destination au cours de l’installation. L’application s’installe à l’emplacement que lui indique l’utilisateur.

  2. Si celui-ci ne modifie pas la destination de l’installation, l’application s’installe suivant le chemin par défaut fourni par le moteur d’exécution :

    • Mac OS : ~/Applications/

    • Windows XP (et versions antérieures) : C:\Program Files\

    • Windows Vista : ~/Apps/

    • Linux : /opt/

    Si le développeur spécifie un paramètre installFolder dans le fichier descripteur d’application, l’application s’installe dans un sous-répertoire de ce dossier.

Système de fichiers AIR

Le processus d’installation pour les applications AIR copie tous les fichiers que le développeur a inclus au sein du fichier d’installation d’AIR dans l’ordinateur local de l’utilisateur. L’application installée est composée des éléments suivants :

  • Windows : un répertoire qui contient tous les fichiers inclus dans le fichier d’installation d’AIR. Le moteur d’exécution crée aussi un fichier exe au cours de l’installation de l’application AIR.

  • Linux : un répertoire qui contient tous les fichiers inclus dans le fichier d’installation d’AIR. Le moteur d’exécution crée également un fichier bin au cours de l’installation de l’application AIR.

  • Mac OS : un fichier app qui reprend tout le contenu du fichier d’installation d’AIR. Il peut être inspecté à l’aide de l’option « Afficher le contenu du package » dans Finder. Le moteur d’exécution crée ce fichier app dans le cadre de l’installation de l’application AIR.

Une application AIR est exécutée par :

  • Windows : l’exécution du fichier .exe dans le dossier install ou un raccourci qui correspond à ce fichier (comme un raccourci dans le menu Démarrer ou sur le Bureau).

  • Linux : l’exécution du fichier .bin dans le dossier install, la sélection de l’application dans le menu Applications ou l’exécution d’un alias ou d’un raccourci.

  • Mac OS : l’exécution du fichier .app ou un alias qui pointe dessus.

Le système des fichiers d’application contient aussi des sous-répertoires liés à la fonction de l’application. Par exemple, les informations envoyées à la mémoire locale chiffrée sont enregistrées dans un sous-répertoire qui porte le même nom que l’identifiant d’application de l’application.

Mémoire de l’application AIR

Les applications AIR disposent de privilèges pour écrire dans n’importe quel emplacement du disque dur de l’utilisateur ; toutefois, il est recommandé aux développeurs d’utiliser le chemin app-storage:/ pour le stockage local lié à leur application. Les fichiers écrits dans app-storage:/ à partir d’une application se trouvent à un emplacement standard qui dépend de leur système d’exploitation :

  • Sous Mac OS : le répertoire de stockage d’une application varie selon la version d’AIR :

    • AIR 3.2 et les versions ultérieures - <appData>/<appId>/Local Store/ <appData> correspond au « dossier des préférences » de l’utilisateur, c’est-à-dire en règle générale : /Utilisateurs/<user>/Bibliothèque/Préférences

    • AIR 3.3 et les versions ultérieures - <chemin>/Bibliothèque/Application Support/<appID>/Local Store , où <chemin> est soit /Utilisateurs/<utilisateur>/Bibliothèque/Containers/<bundle-id>/Data (environnement de sandbox), soit /Utilisateurs/<utilisateur> (exécution en dehors d’un environnement de sandbox)

  • Sous Windows : le répertoire de stockage d’une application se nomme <appData>\<appId>\Local Store\ , où <appData> correspond au « dossier spécial » CSIDL_APPDATA de l’utilisateur, le plus souvent C:\Documents and Settings\<nom d'utilisateur>\Application Data

  • Sous Linux : <appData>/<appID>/Local Store/ , où <appData> correspond à /home/<utilisateur>/.appdata

Vous pouvez accéder au répertoire de stockage de l’application via la propriété air.File.applicationStorageDirectory . Vous pouvez accéder à son contenu à l’aide la méthode resolvePath() de la classe Fichier. Pour plus d’informations, voir la section Utilisation du système de fichiers .

Mise à jour d’Adobe AIR

Lorsque l’utilisateur installe une application AIR qui nécessite une version mise à jour du moteur d’exécution, celui-ci installe automatiquement la version appropriée.

Pour mettre à jour le moteur d’exécution, un utilisateur doit disposer des privilèges administrateur pour l’ordinateur.

Mise à jour des applications AIR

Le développement et le déploiement des mises à jour des logiciels constituent l’un des défis les plus importants dans le domaine de la sécurité auxquels sont confrontées les applications rédigées en code natif. L’interface de programmation AIR fournit un mécanisme pour améliorer cette situation : la méthode Updater.update() peut être appelée lors du lancement afin de vérifier un emplacement distant pour un fichier AIR. Si une mise à jour s’impose, le fichier AIR est téléchargé, installé et l’application redémarre. Les développeurs peuvent utiliser cette classe, non seulement pour obtenir de nouvelles fonctions, mais également pour réagir à des risques de sécurité potentiels.

La classe Updater est réservée à la mise à jour des applications distribuées sous forme de fichiers AIR. Les applications distribuées en tant qu’applications natives doivent utiliser les fonctions de mise à jour éventuellement intégrées au système d’exploitation natif.

Remarque : les développeurs peuvent spécifier la version d’une application en paramétrant la propriété versionNumber du fichier descripteur d’application.

Désinstallation d’une application AIR

La suppression d’une application AIR entraîne celle de tous les fichiers de son répertoire. Elle ne supprime toutefois pas tous les fichiers que l’application a éventuellement écrits hors de ce répertoire. Les changements apportés à des fichiers par l’application AIR hors du répertoire de l’application ne sont pas affectés par une suppression des applications AIR.

Paramètres du Registre Windows pour les administrateurs

Sous Windows, les administrateurs peuvent configurer une machine pour empêcher (ou permettre) les mises à jour de l’installation de l’application AIR et du moteur d’exécution. Ces paramètres se trouvent dans le Registre Windows sous la clé suivante : HKLM\Software\Policies\Adobe\AIR. Parmi eux figurent :

Paramètre du Registre

Description

AppInstallDisabled

Indique que l’installation et la désinstallation de l’application AIR sont autorisées. Définissez sur 0 pour « autorisé » et 1 pour « interdit ».

UntrustedAppInstallDisabled

Indique que l’installation d’applications AIR non fiables (applications qui ne possèdent pas de certificat fiable) est autorisée. Définissez sur 0 pour « autorisé » et 1 pour « interdit ».

UpdateDisabled

Indique que la mise à jour du moteur d’exécution est autorisée, soit comme tâche de fond, soit comme faisant partie d’une installation explicite. Définissez sur 0 pour « autorisé » et 1 pour « interdit ».