Exécution d’exemples ActionScript 3.0 sur un périphérique mobile

Vous pouvez exécuter des exemples de code ActionScript 3.0 sur un périphérique mobile qui prend en charge Flash Player 10.1. Ceci dit, cette opération a généralement pour objet d’apprendre à utiliser des classes et méthodes déterminées. Dans ce cas de figure, exécutez l’exemple sur un périphérique non mobile tel qu’un ordinateur de bureau. L’ordinateur de bureau permet de faire appel à des instructions de suivi et autres outils de débogage Flash Professional ou Flash Builder pour se familiariser avec un exemple de code.

Pour exécuter l’exemple sur un périphérique mobile, copiez les fichiers correspondant sur ce dernier ou sur un serveur Web. Pour copier les fichiers sur le périphérique et exécuter l’exemple dans le navigateur, procédez comme suit :

  1. Créez le fichier SWF en vous référant aux instructions stipulées dans Exécution d’exemples ActionScript 3.0 dans Flash Professional ou Exécution d’exemples ActionScript 3.0 dans Flash Builder. Dans Flash Professional, vous créez le fichier SWF par le biais de Contrôle > Tester l’animation. Dans Flash Builder, vous créez le fichier SWF lors de l’exécution, du débogage ou de la création du projet Flash Builder.

  2. Copiez le fichier SWF dans un répertoire du périphérique mobile. Utilisez à cet effet le logiciel fourni avec le périphérique mobile.

  3. Dans la barre d’adresse du navigateur sur le périphérique mobile, entrez la chaîne « file:// URL » associée au fichier SWF. Entrez par exemple file://applications/MonExemple.swf.

Pour copier les fichiers sur un serveur Web et exécuter l’exemple dans le navigateur du périphérique, procédez comme suit :

  1. Créez un fichier SWF et un fichier HTML. Commencez par suivre les instructions figurant dans Exécution d’exemples ActionScript 3.0 dans Flash Professional ou Exécution d’exemples ActionScript 3.0 dans Flash Builder. Dans Flash Professional, la sélection de Contrôle > Tester l’animation crée le fichier SWF uniquement. Pour créer les deux fichiers, commencez par sélectionner à la fois Flash et HTML sur l’onglet Formats de la boîte de dialogue Paramètres de publication. Sélectionnez ensuite Fichier > Publier pour créer à la fois le fichier HTML et le fichier SWF. Dans Flash Builder, vous créez le fichier SWF et le fichier HTML lors de l’exécution, du débogage ou de la création du projet Flash Builder.

  2. Copiez les fichiers SWF et HTML dans un répertoire hébergé sur le serveur Web.

  3. Dans la barre d’adresse du navigateur du périphérique mobile, entrez l’adresse HTTP du fichier HTML. Entrez par exemple http://www.MonServeurWeb/exemples/MonExemple.html.

Avant d’exécuter un exemple sur un périphérique mobile, tenez compte des considérations suivantes.

Taille de la scène

La taille de scène activée lorsque vous exécutez un exemple sur un périphérique mobile est considérablement inférieure à la taille en vigueur sur un périphérique non mobile. De nombreux exemples ne nécessitent pas une taille de scène spécifique. Lorsque vous créez le fichier SWF, stipulez une taille de scène adaptée au périphérique (176 x 208 pixels, par exemple).

Les exemples pratiques figurant dans le Guide du développeur d’Adobe ActionScript 3.0 ont pour objet d’illustrer divers concepts et classes ActionScript 3.0. Tant au niveau présentation qu’au niveau fonctionnement, leur interface utilisateur est adaptée à un ordinateur de bureau ou un ordinateur portable. Bien que les exemples fonctionnent sur un périphérique mobile, la taille de la scène et la conception de l’interface utilisateur ne conviennent pas à un écran de taille réduite. Adobe recommande d’exécuter les exemples pratiques sur un ordinateur pour se familiariser avec le code ActionScript, puis d’utiliser des fragments de code appropriés dans les applications mobiles.

Substitution de champs de texte aux instructions de suivi

Lorsque vous exécutez un exemple sur un périphérique mobile, il est impossible de visualiser le résultat des instructions de suivi correspondantes. Pour visualiser le résultat, créez une occurrence de la classe TextField. Ajoutez ensuite le texte issu des instructions de suivi à la fin de la propriété text du champ de texte.

La fonction suivante permet de définir un champ de texte à des fins de suivi :

function createTracingTextField(x:Number, y:Number, 
                                width:Number, height:Number):TextField { 
           
    var tracingTF:TextField = new TextField(); 
    tracingTF.x = x; 
    tracingTF.y = y; 
    tracingTF.width = width; 
    tracingTF.height = height; 
     
    // A border lets you more easily see the area the text field covers. 
    tracingTF.border = true; 
    // Left justifying means that the right side of the text field is automatically 
    // resized if a line of text is wider than the width of the text field. 
    // The bottom is also automatically resized if the number of lines of text 
    // exceed the length of the text field. 
    tracingTF.autoSize = TextFieldAutoSize.LEFT; 
     
    // Use a text size that works well on the device. 
    var myFormat:TextFormat = new TextFormat(); 
    myFormat.size = 18; 
    tracingTF.defaultTextFormat = myFormat; 
     
    addChild(tracingTF); 
    return tracingTF; 
}

Ajoutez par exemple cette fonction à la classe du document en tant que fonction privée. Pour les autres méthodes de la classe du document, effectuez le suivi des données par le biais d’un code similaire à celui-ci :

var traceField:TextField = createTracingTextField(10, 10, 150, 150); 
// Use the newline character "\n" to force the text to the next line. 
traceField.appendText("data to trace\n"); 
traceField.appendText("more data to trace\n"); 
// Use the following line to clear the text field. 
traceField.appendText("");

La méthode appendText() n’accepte qu’une seule valeur à titre de paramètre. Cette valeur est une chaîne (occurrence de String ou littéral de chaîne). Pour imprimer la valeur d’une variable qui n’est pas une chaîne, commencez par convertir la valeur en chaîne. A cet effet, la technique la plus simple consiste à appeler la méthode toString() de l’objet :

var albumYear:int = 1999; 
traceField.appendText("albumYear = "); 
traceField.appendText(albumYear.toString());

Taille du texte

De nombreux exemples font appel aux champs de texte pour illustrer un concept. Régler la taille du contenu d’un champ de texte optimise parfois sa lisibilité sur un périphérique mobile. Ainsi, si un exemple fait appel à une occurrence de champ de texte appelée myTextField, le code suivant permet de modifier la taille du contenu :

// Use a text size that works well on the device. 
var myFormat:TextFormat = new TextFormat(); 
myFormat.size = 18; 
myTextField.defaultTextFormat = myFormat

Capture des entrées utilisateur

Le système d’exploitation et le navigateur du périphérique mobile capturent certains événements de type entrée utilisateur que ne reçoit pas le contenu SWF. Bien que le comportement varie selon le système d’exploitation et le navigateur, l’exécution d’exemples sur un périphérique mobile risque d’entraîner des résultats inattendus. Pour plus d’informations, voir Priorité des événements KeyboardEvent.

L’interface utilisateur de nombreux exemples est par ailleurs adaptée à un ordinateur de bureau ou un ordinateur portable. Ainsi, la plupart des exemples pratiques figurant dans le Guide du développeur d’ActionScript 3.0 sont conçus pour être visualisés sur un ordinateur de bureau. De ce fait, il est parfois impossible d’afficher la scène dans son intégralité sur l’écran d’un périphérique mobile. Les fonctionnalités de défilement du contenu du navigateur varient selon ce dernier. En outre, les exemples ne sont pas conçus pour capturer et traiter les événements de défilement horizontal ou vertical. L’interface utilisateur de certains exemples n’est de ce fait pas adaptée à un écran de petite taille. Adobe recommande d’exécuter les exemples sur un ordinateur pour se familiariser avec le code ActionScript, puis d’utiliser des fragments de code appropriés dans les applications mobiles.

Pour plus d’informations, voir Défilement horizontal ou vertical des objets d’affichage.

Gestion du focus

Certains exemples nécessitent l’attribution du focus à un champ. Vous pouvez ainsi entrer du texte ou sélectionner un bouton. Pour ce faire, faites appel au périphérique de pointage du périphérique mobile, tel un stylet ou le doigt. Vous disposez également des touches de navigation du périphérique mobile pour attribuer le focus à un champ. Pour sélectionner un bouton doté du focus, utilisez la touche de sélection du périphérique mobile à l’instar de la touche Entrée sur un ordinateur. Sur certains périphériques, il suffit de taper deux fois sur un bouton pour le sélectionner.

Pour plus d’informations sur le focus, voir Gestion du focus.

Gestion des événements de souris

De nombreux exemples écoutent les événements de souris. Sur un ordinateur, ces événements de souris se produisent, par exemple, lorsqu’un utilisateur survole un objet d’affichage ou clique sur un objet d’affichage à l’aide de la souris. Sur un périphérique mobile, les événements issus de périphériques de pointage tels qu’un stylet ou un doigt portent le nom d’événements tactiles. Flash Player 10.1 mappe les événements tactiles sur les événements de souris. Ce mappage assure le fonctionnement du contenu SWF développé avant Flash Player 10.1. Par conséquent, les exemples fonctionnent lorsque l’utilisateur sélectionne ou fait glisser un objet d’affichage à l’aide d’un périphérique de pointage.

Performances

La puissance de traitement d’un périphérique mobile est inférieure à celle d’un ordinateur de bureau. Certains exemples qui sollicitent intensivement l’unité centrale risquent de s’exécuter lentement sur un périphérique mobile. Ainsi, l’exemple figurant dans Exemple d’utilisation de l’API de dessin : générateur algorithmique d’effets visuels effectue un grand nombre d’opérations de calcul et de dessin à chaque image. L’exécution de cet exemple sur un ordinateur illustre diverses API de dessin. L’exemple n’est toutefois pas adapté à certains périphériques mobiles, en raison de leurs performances limitées.

Pour plus d’informations sur les performances d’une application sur un périphérique mobile, voir Optimisation des performances pour la plate-forme Adobe Flash.

Recommandations de bonne pratique

Les exemples ne tiennent pas compte des recommandations de bonne pratique en matière de développement d’applications pour un périphérique mobile. Considérez les limites de mémoire et de puissance de traitement des périphériques mobiles. De même, l’interface utilisateur destinée à un écran de taille réduite possède des caractéristiques différentes de celles d’une interface pour écran d’ordinateur de bureau. Pour plus d’informations sur le développement d’applications pour périphérique mobile, voir Optimisation des performances pour la plate-forme Adobe Flash.