A propos de l’environnement HTML

Adobe AIR 1.0 et les versions ultérieures

Adobe® AIR® fait appel à WebKit (www.webkit.org), également utilisé par le navigateur Web Safari, pour analyser, disposer et rendre un contenu HTML ou JavaScript. Il n’est pas indispensable d’utiliser les API AIR dans un contenu HTML. Vous avez la possibilité de programmer intégralement le contenu d’un objet HTMLLoader ou d’une fenêtre HTML à l’aide des langages HTML et JavaScript. La plupart des pages et applications HTML existantes devraient être exécutées en présentant peu de modifications (à condition qu’elles utilisent des fonctions HTML, CSS, DOM et JavaScript compatibles avec WebKit).

Important : les nouvelles versions du moteur d’exécution Adobe AIR comprennent parfois des versions mises à jour de WebKit. L’intégration d’une mise à jour de WebKit à une nouvelle version d’AIR risque d’engendrer des modifications inattendues dans une application AIR déployée. Ces modifications affectent parfois le comportement ou l’apparence du contenu HTML d’une application. Par exemple, les améliorations ou les corrections apportées au rendu WebKit ont parfois un impact sur les éléments de mise en forme de l’interface utilisateur d’une application. C’est pourquoi il est fortement recommandé d’intégrer un mécanisme de mise à jour à votre application. S’il s’avère nécessaire de mettre à jour votre application en raison d’une modification de la version de WebKit intégrée à AIR, le mécanisme de mise à jour d’AIR peut inviter l’utilisateur à installer la nouvelle version de votre application.

Le tableau suivant répertorie les versions du navigateur Web Safari qui font appel à la version de WebKit correspondant à celle utilisée dans AIR :

Version d’AIR

Version de Safari

1.0

2.04

1.1

3.04

1.5

4.0 bêta

2.0

4.03

2.5

4.03

2.6

4.03

2.7

4.03

3

5.0.3

Pour déterminer la version installée de WebKit, il suffit de vérifier la chaîne de l’agent utilisateur par défaut renvoyée par un objet HTMLLoader :

var htmlLoader:HTMLLoader = new HTMLLoader(); 
trace( htmlLoader.userAgent );

N’oubliez pas que la version de WebKit utilisée dans AIR n’est pas identique à la version open source. Certaines fonctions ne sont pas prises en charge dans AIR et la version d’AIR est susceptible d’inclure des correctifs liés à la sécurité et aux bogues qui ne sont pas encore intégrés à la version correspondante de WebKit. Voir Fonctions de WebKit non prises en charge dans AIR.

Etant donné que les applications AIR sont exécutées directement dans le poste de travail, en bénéficiant d’un accès complet au système de fichiers, le modèle de sécurité applicable au contenu HTML est plus strict que celui d’un navigateur Web standard. Dans AIR, seul le contenu chargé à partir du répertoire d’installation de l’application est placé dans le sandbox de l’application. Le sandbox de l’application dispose du niveau de privilège le plus élevé, l’autorisant à accéder aux API AIR. AIR place les autres contenus dans des sandbox distincts en fonction de leur origine. Les fichiers chargés à partir du système de fichiers sont placés dans un sandbox local tandis que ceux qui ont été chargés à partir du réseau à l’aide des protocoles http: ou https: sont dirigés vers un sandbox dépendant du domaine du serveur distant. L’accès à toute API AIR est interdit au contenu de ces sandbox qui ne sont pas des applications. Ce type de contenu est exécuté comme il le serait dans un navigateur Web classique.

Le contenu HTML visible dans AIR n’affiche pas de contenu SWF ou PDF si des paramètres alpha, de mise à l’échelle ou de transparence sont appliqués. Pour plus d’informations, voir Eléments à prendre en compte lors du chargement d’un contenu SWF ou PDF dans une page HTML et Transparence de la fenêtre.