Remarque : l’API de SystemUpdater est prise en charge sur les plates-formes de bureau.
Cette classe contient des constantes statiques qui sont utilisées avec la méthode
Utilisez les valeurs définies par la classe TouchscreenType avec la propriété
Les domaines d’application sont utilisés lorsqu’un fichier SWF externe est chargé à l’aide de la classe Loader. Toutes les définitions ActionScript 3.0 du fichier SWF chargé sont stockées dans le domaine d’application, qui est spécifié par la propriété
L’ensemble du code d’un fichier SWF est défini de sorte à exister dans un domaine d’application. Votre application principale s’exécute dans le domaine d’application en cours. Le domaine du système contient tous les domaines d’application, y compris le domaine en cours ; il contient donc toutes les classes Flash Player.
A l’exception du domaine du système, tous les domaines d’application sont associés à un domaine du parent. Le domaine parent du domaine d’application de votre application principale est le domaine système. Les classes chargées ne sont définies que si leur parent ne les définit pas encore. Vous ne pouvez pas remplacer une définition de classe chargée par une définition plus récente.
Pour obtenir des exemples d’utilisation de domaines d’application, voir le Guide du développeur d’ActionScript 3.0.
La fonction constructeur
Remarques :
Commencez par créer le fichier RuntimeClasses.swf à partir du code suivant :
Mettez ensuite en œuvre le code suivant :
Remarques :
Créez un fichier Greeter.as dans le répertoire « en » avec le code suivant :
Créez ensuite un fichier Greeter.as similaire dans le répertoire « es » :
Compilez les fichiers SWF de ces deux dossiers, puis mettez en œuvre le code suivant :
Dans Flash Professional, la spécification de "~~" constitue l’unique façon d’accéder aux fichiers SWF non locaux à partir des fichiers SWF locaux ayant été publiés à l’aide du paramètre Accès au réseau uniquement de l’option Sécurité de lecture locale dans l’outil de création de Flash.
Remarque : la valeur du caractère générique ne fonctionne pas pour les sous-domaines. Par exemple, vous ne pouvez pas utiliser
Remarque : l’appel de cette méthode depuis le code dans le sandbox de l’application AIR émet une exception SecurityError. Le contenu situé hors du domaine de sécurité de l’application ne peut pas effectuer la programmation croisée du contenu dans le sandbox de l’application. Toutefois, le contenu situé hors du sandbox de l’application peut communiquer avec le contenu du sandbox de sécurité de l’application par un pont sandbox.
Si deux fichiers SWF sont servis à partir du même domaine, par exemple, http://mysite.com/swfA.swf et http://mysite.com/swfB.swf, alors swfA.swf peut alors analyser et modifier les variables, les objets, les propriétés, les méthodes, etc. dans swfB.swf et swfB.swf peut faire la même chose pour swfA.swf. Ceci est appelé programmation entre plusieurs animations ou programmation croisée.
Si deux fichiers SWF sont servis à partir de domaines différents, par exemple, http://siteA.com/swfA.swf et http://siteB.com/siteB.swf, puis, par défaut, Flash Player n’autorise pas swfA.swf à créer un script pour swfB.swf, mais pas swfB.swf à créer un script pour swfA.swf. Un fichier SWF autorise les fichiers SWF provenant d’autres domaines en appelant
Dans tout contexte interdomaines, il est important d’identifier clairement les parties impliquées. Dans le cadre de cette discussion, le côté procédant à la programmation croisée sera appelé partie procédant à l’accès (habituellement le fichier SWF procédant à l’accès) et l’autre côté sera appelé partie cible (généralement le fichier SWF cible). Lorsque siteA.swf crée un script contrôlant siteB.swf, siteA.swf est la partie qui procède à l’accès et siteB.swf la partie réceptrice.
Les autorisations interdomaines établies avec
En dehors de la protection des fichiers SWF contre les scripts interdomaines provenant d’autres fichiers SWF, Flash Player protège également les fichiers SWF contre ce type de script provenant des fichiers HTML. La programmation HTML vers SWF peut se produire avec des fonctions anciennes du navigateur telles que
La spécification de l’adresse IP en tant que paramètre pour
Différences liées à la version
Les règles de sécurité interdomaines de Flash Player ont évolué de version en version. Le tableau suivant récapitule les différences.
Les versions qui contrôlent le comportement de Flash Player désignent les versions SWF (la version publiée d’un fichier SWF), non pas la version de Flash Player. Par exemple, lorsque Flash Player 8 lit un fichier SWF publié par la version 7, il applique un comportement compatible à la version 7. Cette pratique permet de garantir que les mises à jour du lecteur ne changent pas le comportement de
La colonne Version du tableau précédent indique la version la plus récente des fichiers SWF lors des opérations de programmation croisée. Le comportement de Flash Player dépend de la version du fichier SWF procédant à l’accès ou du fichier SWF cible, en retenant la version supérieure.
Les paragraphes suivants fournissent de plus amples informations sur les modifications de sécurité de Flash Player impliquant
Version 5. Il n’y a aucune restriction de programmation de scripts interdomaines.
Version 6. Des fonctions de sécurité contre la programmation interdomaines ont été introduites. Par défaut, Flash Player empêche la programmation interdomaines, tandis que
Version 7. Le filtrage de super-domaine est modifié pour obtenir la correspondance exacte des domaines. Deux fichiers ne peuvent se programmer que si les noms d’hôte figurant dans leurs URL sont identiques ; sinon vous devez effectuer un appel à
Version 8. Il existe deux grands domaines de modification :
De façon exceptionnelle, la situation suivante peut se produire : vous chargez un fichier SWF enfant à partir d’un domaine différent et souhaitez lui permettre de créer un script sur le fichier SWF parent, mais vous ne connaissez pas le domaine final du fichier SWF enfant. Cela peut se produire, par exemple, lorsque vous utilisez des redirections d’équilibrage de charge ou des serveurs tiers.
Dans ce cas, vous pouvez utiliser la propriété
Vous devez attendre le début du chargement du fichier SWF enfant pour obtenir la valeur correcte de la propriété
La situation opposée peut également se produire ; en effet, vous pouvez créer un fichier SWF enfant sur lequel son fichier parent pourra créer un script, mais qui ignore le domaine de celui-ci. Dans ce cas, vous pouvez accéder à la propriété
Si vous procédez à la publication de Flash Player 8 ou une version ultérieure, vous pouvez également traiter ces situations en appelant
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
La spécification de « ~~ » constitue la seule façon d’accéder aux fichiers SWF non locaux à partir des fichiers SWF locaux qui ont été publiés à l’aide du paramètre Accès au réseau uniquement pour l’option Sécurité de lecture locale (Fichier > Paramètres de publication > onglet Flash) dans l’outil de création de Flash.
Remarque : la valeur du caractère générique ne fonctionne pas pour les sous-domaines. Par exemple, vous ne pouvez pas utiliser
Flash Player offre la méthode
Remarque : l’appel de cette méthode depuis le code dans le sandbox de l’application AIR émet une exception SecurityError. Le contenu situé hors du domaine de sécurité de l’application ne peut pas effectuer la programmation croisée du contenu dans le sandbox de l’application. Toutefois, le contenu situé hors du sandbox de l’application peut communiquer avec le contenu du sandbox de sécurité de l’application par un pont sandbox.
Cette méthode fonctionne de la même façon que
Utilisez
Tenez compte du fait que les informations suivantes constituent uniquement l’un des scénarios possibles et sont conçues pour vous aider à comprendre
Supposons que vous deviez créer un site de commerce électronique qui comprend deux composants : un catalogue, qui ne doit pas nécessairement être sécurisé, dans la mesure où il contient uniquement des informations publiques ; et un composant panier/règlements, qui doit être sécurisé pour protéger les informations financières et personnelles des utilisateurs. Supposons que vous deviez servir le catalogue à partir de http://mysite.com/catalog.swf et le panier à partir de https://mysite.com/cart.swf. Le cahier des charges de votre site exige qu’aucun tiers ne puisse voler les numéros de carte de crédit de votre utilisateur en profitant des faiblesses de votre architecture de sécurité.
Imaginons qu’un intermédiaire malveillant tente d’intervenir entre le serveur et vos utilisateurs pour s’emparer des numéros de carte de crédit que vos utilisateurs pénètrent dans votre application de panier. L’intermédiaire, peut être un FAI peu scrupuleux, par exemple, ou un administrateur malveillant travaillant dans la même entreprise que certains utilisateurs, ou de façon plus générale, toute personne ayant la possibilité d’afficher ou modifier les paquets réseau transmis sans protection sur Internet, entre vos utilisateurs et vos serveurs. Cette situation n’est pas rare.
Si cart.swf utilise HTTPS pour transmettre les informations bancaires aux serveurs, l’intermédiaire ne peut pas voler directement ces informations en détournant les paquets réseau, dans la mesure où la transmission HTTPS est chiffrée. Cependant, l’attaquant utilise une autre technique : modifier le contenu de l’un de vos fichiers SWF pendant sa remise à l’utilisateur, en remplaçant le fichier SWF par une version modifiée qui détourne les informations relatives à l’utilisateur vers un autre serveur.
Le protocole HTTPS, entre autres, empêche l’application de cette « modification », dans la mesure où non seulement les transmissions HTTPS sont chiffrées mais encore protégées contre les modifications. Si un intermédiaire tente de modifier un paquet, le récepteur détecte la modification et refuse le paquet. Ainsi, l’attaquant ne peut pas modifier cart.swf, dans la mesure où il est transmis par l’intermédiaire du protocole HTTPS.
Supposons maintenant que vous souhaitiez autoriser les boutons dans catalog.swf, servi par le protocole HTTP, pour ajouter des éléments au panier dans cart.swf, servi par le protocole HTTPS. Pour accomplir ceci, cart.swf appelle
Naturellement, cette implémentation n’est pas souhaitable, mais vous devez autoriser la programmation croisée entre les deux fichiers SWF de votre site. Voici deux façons de changer la conception de ce site virtuel d’e-commerce afin d’éviter
Les navigateurs Web appliquent la séparation des fichiers HTTPS et non HTTPS depuis de nombreuses années et le scénario ci-dessus illustre l’utilité de cette restriction. Flash Player permet de contourner cette restriction de sécurité lorsque c’est strictement nécessaire, mais analysez les conséquences avant d’y procéder.
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Avec
De cette manière, Flash Player ou AIR tente de récupérer un fichier de régulation à partir de l’URL spécifiée. Les autorisations accordées par l’intermédiaire du fichier de régulation s’appliquent à l’ensemble du contenu, au même niveau ou à un niveau inférieur dans la hiérarchie virtuelle des répertoires du serveur.
Par exemple, selon le code précédent, ces lignes ne renvoient pas d’exception :
Par contre, le code suivant renvoie une exception de sécurité :
Vous pouvez utiliser
Lorsqu’il recherche un fichier de régulation maître,. Flash Player attend une réponse du serveur pendant trois secondes. En l’absence d’une réponse, l’application considère qu’il n’existe pas de fichier de régulation maître. Toutefois, si aucune valeur de dépassement de délai par défaut est définie pour les appels à
Vous ne pouvez pas vous connecter aux ports généralement réservés. Pour obtenir une liste complète des ports bloqués, voir la rubrique « Restriction des API de réseau » dans le Guide du développeur d’ActionScript 3.0.
L’utilisation du protocole
De cette manière, Flash Player ou AIR peut récupérer un fichier de régulation au niveau du port et de l’hôte spécifiés. Lors de la connexion au port spécifié, Flash Player ou AIR transmet
Vous pouvez éviter qu’un fichier SWF utilise cette méthode en définissant le paramètre
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Dans Flash Player 6, le domaine utilisé pour ces paramètres de lecteur était basé sur la partie finale du domaine du fichier SWF. Lorsque le domaine d’un fichier SWF inclut plus de deux segments, tels que www.exemple.com, le premier segment du domaine (« www ») est supprimé et la partie restante du domaine est utilisée : exemple.com. Ainsi, dans Flash Player 6, www.exemple.com et magasin.exemple.com ont en commun le domaine « example.com » pour ces paramètres. de même, www.exemple.co.fr et magasin.exemple.co.fr ont tous les deux recours au domaine exemple.co.fr pour ces paramètres. A compter de Flash Player 7, les paramètres du lecteur sont choisis par défaut en fonction d’un domaine exact de fichier SWF. Par exemple, le fichier SWF de www.exemple.com applique les paramètres du lecteur pour www.exemple.com, et le fichier SWF de magasin.exemple.com utiliserait des paramètres différents pour magasin.exemple.com.
Lorsque la propriété
Si vous avez déjà publié un fichier SWF de version 6 et créé des objets persistants à partir de ce dernier, et si vous devez extraire ces objets partagés persistants à partir de ce fichier SWF après l’avoir porté vers la version 7 ou plus récente (ou à partir d’un autre fichier SWF de version 7 ou plus récente), vous devez définir
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Lors du chargement des fichiers SWF avec la méthode
Lors du chargement d’un fichier SWF avec la méthode
Lors du chargement des images (JPEG, GIF ou PNG) et non pas de fichiers SWF, il n’est pas nécessaire de spécifier un domaine de sécurité ou un domaine d’application, dans la mesure où ces concepts n’ont de sens que pour les fichiers SWF. Par contre, une seule décision est nécessaire : avez-vous besoin d’un accès programmé aux pixels de l’image chargée ? Dans l’affirmative, voir la propriété
Remarque : le contenu du sandbox de sécurité de l’application air ne peut pas charger le contenu d’autres sandboxes dans son SecurityDomain.
Cette propriété est utile lorsque vous souhaitez importer le contenu de l’image dans le sandbox, notamment lorsque vous souhaitez répliquer ou traiter une image à partir d’un autre domaine, mais ne souhaitez pas prendre le risque de recevoir un fichier SWF alors que vous n’attendiez qu’un fichier d’image. Etant donné que les fichiers SWF peuvent contenir du code ActionScript, l’importation d’un fichier SWF est une opération beaucoup plus risquée que l’importation d’un fichier image.
Dans le contenu AIR dans le sandbox de l’application, la valeur par défaut est
La propriété
Tout domaine de sécurité est divisé en un ou plusieurs domaines d’application, représentés par les objets ApplicationDomain. Les domaines d’application n’ont pas de rôle de sécurité ; ils servent à gérer les unités de code ActionScript qui doivent coopérer. Si vous chargez un fichier SWF provenant d’un autre domaine, puis autorisez son placement dans un domaine de sécurité distinct, vous ne pouvez pas contrôler le domaine d’application dans lequel le ficher SWF est placé. Si vous avez spécifié un domaine d’application, ce choix sera ignoré. Cependant, si vous chargez un fichier SWF dans votre propre domaine de sécurité, soit parce que le fichier SWF provient de votre domaine, soit parce que vous l’importez dans votre domaine de sécurité, puis vous pouvez contrôler le domaine d’application du fichier SWF chargé.
Vous devez transmettre le domaine d’application à partir de votre propre domaine de sécurité dans
Vous disposez de quatre choix concernant le type de propriété
Une fois le chargement terminé, les deux parties (en cours de chargement ou chargées) peuvent avoir à rechercher leur propre domaine d’application, ou le domaine d’application de l’autre partie, afin d’appeler
Pour plus d’informations, voir la section « Classe ApplicationDomain » du chapitre « Environnement du système client » du Guide du développeur d’ActionScript 3.0.
Définissez cet indicateur sur
Lorsque vous appelez la méthode
Si vous définissez
Si vous définissez
Si l’accès au niveau des pixels de l’image en cours de chargement est requis, vous ne pouvez pas définir la propriété
Evitez également de définir
Si vous téléchargez un objet à partir d’une URL qui peut utiliser des redirections HTTP côté serveur, servez-vous de
Il n’est pas nécessaire que vous définissiez cette propriété pour le contenu AIR s’exécutant dans le sandbox de l’application. Le contenu dans le sandbox de l’application AIR peut appeler la méthode
Sous la stratégie par défaut,
Sous la stratégie
Quelle que soit la stratégie choisie, le moteur d’exécution utilise la même mémoire cache et le même comportement de purge une fois l’image décodée. Le moteur d’exécution peut à tout moment abandonner le décodage et redécoder l’image dès que cela est nécessaire.
Normalement, la valeur de la propriété
Le but de cette API est d’activer le fichier SWF de chargement pour transférer ses paramètres à un fichier SWF chargé. Cette fonctionnalité est particulièrement utile lorsque vous utilisez la méthode
Considérons par exemple l’URL qui suit :
Le code suivant utilise la propriété LoaderContext.parameters pour reproduire un paramètre transmis à cette URL :
import flash.system.LoaderContext; import flash.display.Loader; var l:Loader = new Loader(); var lc:LoaderContext = new LoaderContext; lc.parameters = { "foo": "bar" }; l.load(new URLRequest("child.swf"), lc);
Pour vérifier que le paramètre a été correctement transmis, utilisez l’instruction trace suivante après avoir exécuté ce code :
Si le contenu est chargé correctement, cette trace imprime "bar".
Lorsque le contenu est entièrement chargé, l’objet Loader devient normalement le parent du contenu. Si la propriété
Si le contenu chargé est un objet AVM1Movie, ou si une erreur est renvoyée lorsque
Si le parent demandé et le contenu chargé se trouvent dans des sandbox de sécurité différents, et si le parent demandé n’a pas accès au contenu chargé, les actions suivantes se produisent :
Le code suivant utilise
import flash.system.LoaderContext; import flash.display.Loader; import flash.display.Sprite; var lc:LoaderContext = new LoaderContext(); var l:Loader = new Loader(); var s:Sprite = new Sprite(); lc.requestedContentParent = s; addChild(s); l.load(new URLRequest("child.swf"), lc);
Lors de l’exécution de ce code, le fichier SWF enfant s’affiche sur la scène. Ce fait confirme que l’objet Sprite que vous venez d’ajouter à la scène est le parent du fichier child.swf chargé.
Le choix du domaine de sécurité n’a de sens que si vous chargez un fichier SWF pouvant provenir d’un autre domaine (un autre serveur) que le fichier SWF de chargement. Lorsque vous chargez un fichier SWF provenant de votre propre domaine, ce dernier est placé dans votre domaine de sécurité. Cependant, lorsque vous chargez un fichier SWF à partir d’un domaine différent, vous disposez de deux options. Vous pouvez autoriser le placement du fichier SWF chargé dans le domaine de sécurité « naturel », qui est différent de celui du fichier SWF de chargement. Il s’agit de la valeur par défaut. L’autre consiste à spécifier que vous souhaitez placer le fichier SWF chargé dans le même domaine de sécurité que le fichier SWF de chargement, en définissant
Vous pouvez transmettre votre propre domaine de sécurité uniquement dans
Le contenu du sandbox de sécurité de l’application AIR ne peut pas charger le contenu d’autres sandbox dans son domaine de sécurité.
Pour plus d’informations, voir le chapitre « Sécurité » du Guide du développeur d’ActionScript 3.0.
Indique si vous pouvez utiliser un objet
Dans le contenu AIR dans le sandbox de l’application, la valeur par défaut est
La classe JPEGLoaderContext étend la classe LoaderContext. Définissez la propriété
Toutefois, certaines fonctionnalités d’Adobe AIR ne sont pas répertoriés comme propriétés de la classe Capabilities. Il s’agit de propriétés d’autres classes :
N’utilisez pas les classes
Vous pouvez envoyer des informations sur les capacités, qui sont stockées dans la propriété
A=t&SA=t&SV=t&EV=t&MP3=t&AE=t&VE=t&ACC=f&PR=t&SP=t& SB=f&DEB=t&V=WIN%209%2C0%2C0%2C0&M=Adobe%20Windows& R=1600x1200&DP=72&COL=color&AR=1.0&OS=Windows%20XP& L=en&PT=External&AVD=f&LFD=f&WD=f&IME=t
Le tableau suivant dresse la liste des propriétés de la classe Capabilities et des chaînes serveur correspondantes :
Il existe également une chaîne de serveur
Toutes les propriétés de la classe Capabilities sont accessibles en lecture seule.
Pour le contenu dans Adobe AIR™, cette propriété s’applique uniquement au contenu des sandboxes de sécurité autres que le sandbox de sécurité de l’application. Le contenu du sandbox de sécurité de l’application peut toujours accéder au microphone et à la caméra de l’utilisateur.
trace(Capabilities.cpuArchitecture);
Les informations régionales renvoyées dans les chaînes de paramètres régionaux varient en fonction des systèmes d’exploitation. Un système d’exploitation peut renvoyer
La première entrée du tableau renvoyé possède généralement le même identifiant de langue principale que la propriété
La chaîne serveur est
Sur les systèmes en anglais, cette propriété renvoie uniquement le code de langue (
Remarque : la valeur de la propriété
La chaîne serveur est
La propriété
La lecture de bibliothèques partagées à l’exécution est également bloquée si cette propriété est définie sur
La chaîne serveur est
N’utilisez pas la classe
La chaîne serveur est
La chaîne serveur est
N’utilisez pas la classe
La chaîne serveur est
L’exemple suivant illustre une chaîne de code URL :
A=t&SA=t&SV=t&EV=t&MP3=t&AE=t&VE=t&ACC=f&PR=t&SP=t& SB=f&DEB=t&V=WIN%208%2C5%2C0%2C208&M=Adobe%20Windows& R=1600x1200&DP=72&COL=color&AR=1.0&OS=Windows%20XP& L=en&PT=External&AVD=f&LFD=f&WD=f
trace(Capabilities.supports32BitProcesses);
trace(Capabilities.supports64BitProcesses);
WIN 9,0,0,0 // Flash Player 9 for Windows MAC 7,0,25,0 // Flash Player 7 for Macintosh LNX 9,0,115,0 // Flash Player 9 for Linux AND 10,2,150,0 // Flash Player 10 for Android
N’utilisez pas la classe
La chaîne serveur est
In the following example, the fscommand()
function sets Flash Player to
scale the SWF file to the full monitor screen size when the fullscreen_btn
button or
unfullscreen_btn
is released:
this.fullscreen_btn.onRelease = function() { fscommand("fullscreen", true); }; this.unfullscreen_btn.onRelease = function() { fscommand("fullscreen", false); };
The following example uses the fscommand()
function applied to a button in Flash to
open a JavaScript message box in an HTML page. The message itself is sent to JavaScript as the
fscommand
parameter.
You must add a function to the HTML page that contains the SWF file. This function,
myDocument
_DoFSCommand
, sits in the HTML page and waits for an
fscommand()
function in Flash. When an fscommand
is triggered in Flash
(for example, when a user presses the button), the command
and args
strings
are passed to the myDocument
_DoFSCommand
function. You can use the
passed strings in your JavaScript or VBScript code in any way you like. In this example, the function
contains a conditional if
statement that checks to see if the command string is
"messagebox
". If it is, a JavaScript alert box (or "message box") opens
and displays the contents of the args
string.
function myDocument_DoFSCommand(command, args) { if (command == "messagebox") { alert(args); }
In the Flash document, add the fscommand()
function to a button:
fscommand("messagebox", "This is a message box called from within Flash.")
You can also use expressions for the fscommand()
function and parameters, as in the
following example:
fscommand("messagebox", "Hello, " + name + ", welcome to our website!")
To test the SWF file, select File > Publish Preview > HTML.
Note: If you publish your SWF file using the Flash with FSCommand template in the
HTML
tab of the Publish Settings dialog box, the myDocument_DoFSCommand
function is inserted
automatically. The SWF file's NAME
and ID
attributes will be the filename.
For example, for the file myDocument.fla, the attributes would be set to myDocument
.
La fonction
Vous pouvez empêcher un fichier SWF d’utiliser cette méthode en définissant le paramètre
La fonction
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Usage 1 : pour utiliser
Toutes les commandes qui figurent dans le tableau ne sont pas disponibles dans toutes les applications :
La commande
Usage 2 : pour utiliser
Dans un navigateur Web, la fonction
Dans la page Web qui contient le fichier SWF, définissez l’attribut
Dans Flash Player versions 10 et ultérieures s’exécutant dans un navigateur, il est possible que vous ne puissiez pas utiliser cette méthode par programmation pour ouvrir une fenêtre contextuelle. Certains navigateurs (et configurations de navigateur) peuvent bloquer les fenêtres contextuelles ; il n’est donc pas possible de garantir l’ouverture de toutes les fenêtres contextuelles. Toutefois, pour un résultat optimal, utilisez cette méthode pour ouvrir une fenêtre contextuelle uniquement dans le code qui s’exécute comme conséquence directe de l’action d’un utilisateur (par exemple, un événement de type clic de souris ou pression de touche).
Usage 3 : la fonction
Usage 4 : dans VisualBasic, Visual C++ et dans d’autres programmes ayant recours aux contrôles ActiveX, la fonction
Remarque : la classe ExternalInterface offre de meilleures fonctionnalités de communication entre JavaScript et ActionScript (Utilisation 2), et entre ActionScript et VisualBasic, Visual C++ ou d’autres programmes pouvant héberger des contrôles ActiveX (Utilisation 4). Vous devriez continuer à utiliser la fonction
Remarque : cet exemple doit être exécuté avec la version autonome de Flash Player et non pas dans un navigateur Web.
Prise en charge du profil AIR : cette fonctionnalité est prise en charge sur les systèmes d’exploitation de bureau, mais ne l’est pas sur tous les périphériques mobiles. Elle est également prise en charge sur les périphériques AIR pour TV. Vous pouvez tester la prise en charge lors de l’exécution à l’aide de la propriété
Les IME permettent aux utilisateurs de taper des caractères de texte non ASCII multioctet pour les langues orientales, tels que le Chinois, le Japonais et le Coréen. Pour plus d’informations sur la manipulation des IME, voir la documentation du système d’exploitation pour lequel vous développez des applications. Les sites Web suivants comportent des ressources supplémentaires :
Si aucun IME n’est actif sur l’ordinateur de l’utilisateur, tout appel aux méthodes ou propriétés IME, autres que
Le tableau ci-après, indique les plates-formes prises en charge par cette classe :
~~ Ces opérations ne sont pas toutes prises en charge par tous les IME de Windows. Seul l’IME japonais les prend toutes en charge.
~~~~ Sur le Macintosh, seul l’IME japonais prend en charge ces méthodes. Les IME d’éditeurs tiers ne les prennent pas en charge.
La version ActionScript 3.0 de cette classe ne prend pas Macintosh Classic en charge.
Si aucun texte n’a le focus, cette méthode échoue et renvoie une erreur.
Vous trouverez des propriétés et des méthodes supplémentaires dans d’autres classes au sein du package flash.system : les classes Capabilities
Cette classe contient uniquement des méthodes et des propriétés statiques. Vous ne pouvez pas créer d’occurrences de la classe Système.
Pour la version débogueur de Flash Player autonome uniquement.
Les applications AIR doivent appeler la méthode
Pour la version débogueur de Flash Player ou l’application de débogage du lanceur AIR.
Pour la version débogueur de Flash Player ou l’application de débogage du lanceur AIR.
Cette méthode est fournie pour le contenu SWF s’exécutant dans Flash Player 9. Elle permet uniquement d’ajouter le contenu de la chaîne au Presse-papiers.
Le contenu de Flash Player 10 et le contenu dans le sandbox de sécurité de l’application d’une application AIR peuvent appeler la méthode
Les développeurs AIR doivent utiliser cette propriété pour déterminer la consommation totale de mémoire d’une application.
Pour Flash Player, cela comprend la mémoire utilisée par l’application conteneur, telle que le navigateur Web.
Cette propriété, exprimée sous forme de nombre, prend en charge des valeurs plus élevées que la propriété
Cette propriété ne renvoie pas toute la mémoire utilisée par une application Adobe AIR
Cette propriété ne renvoie pas toute la mémoire utilisée par une application Adobe AIR
Si la quantité de mémoire allouée est supérieure à la valeur maximale d’un objet uint (
Le texte que vous chargez comme fichier externe (à l’aide de
Si vous chargez des fichiers externes qui ne sont pas codés en Unicode, définissez
System.useCodePage = true;
Lorsque ce code est présent, l’application interprète le texte externe à l’aide de la page de code classique du système d’exploitation. Par exemple, ce code est généralement CP1252 pour un système d’exploitation Windows anglais et Shift-JIS pour un système d’exploitation japonais.
Si vous définissez
Pour que les utilisateurs de toutes les plates-formes puissent afficher les fichiers de texte externes utilisés dans votre application, vous devez coder tous les fichiers de texte externes en Unicode et conserver la propriété
Flash Player identifie la nécessité de mise à jour d’un module Flash Access en distribuant un événement NetStatusEvent. L’événement possède une propriété
Flash Player identifie la nécessité de mise à jour du lecteur en distribuant un événement StatusEvent avec plusieurs valeurs de la propriété
Remarque : l’API de SystemUpdater est prise en charge sur toutes les plates-formes de bureau.
Lorsque la mise à jour commence, écoutez les événements définis dans cette classe. Les événements suivants indiquent la fin d’une mise à jour et permettent de lancer une nouvelle mise à jour ou de poursuivre une tentative de mise à jour, à l’instar d’un appel de la fonction