Apache Adobe Flex TutorialTutoriaux Adobe Flex & AIR en Français

15juil/080

Flex Debug – Afficher les zones de retraçage

Même avec du matériel récent, vous pouvez avoir des baisses de performances au niveau du rendu sur des applications très graphiques. Isoler la source des ces baisses peut être difficile, c'est pourquoi le Debug Player expose une option appelée "Afficher les zones de retraçage" (Show Redraw Regions).
Quand cette option est activée, le Player va mettre en évidence les zones de l'application qui sont redessinées, ce qui peut vous aider à identifier les zones graphiques d'une application qui sont mal redessinées. Vous pouvez activer cette option en sélectionnant l'option "Afficher les zones de retraçage" depuis le menu clic droit du Debug Player, ou avec de l'ActionScript. Pour activer cette option avec de l'ActionScript, vous pouvez appeler la méthode showRedrawRegions() du package flash.profiler. Cette méthode fonctionne uniquement avec le Debug Player et de requiert pas un SWF de debug.
Voici un exemple simple qui va vous permettre de voir comment cela fonctionne:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" horizontalAlign="center"
	verticalAlign="middle" viewSourceURL="srcview/index.html" initialize="flash.profiler.showRedrawRegions(true)">
	<mx:HSlider width="80%"/>
</mx:Application>

Flex Source Code Download: Télécharger le code source complet de l'application

This movie requires Flash Player 11

15juil/080

Flex Debug – L'API pour le debugging

Bien que les erreurs à l'exécution soient utiles, bien souvent, vous aurez besoin de bien plus que seulement des erreurs à l'exécution pour identifier les bugs. Dans ce cas-là, le Flash Debug Player expose une API pour que les développeurs puissent interagir avec une application à l'exécution. Cela inclut la possibilité de fixer des breakpoints (points d'arrêt), de jouer le code au pas-à-pas, de fixer et de récupérer des variables à l'exécution ainsi que d'autres fonctions relatives au debug. Deux debuggers sont disponibles sur le marché, tout deux crées par Adobe.
Le premier est le debugger gratuit en ligne de commande FDB fournit avec le SDK Flex, et l'autre est le debugger intégré à Flex Builer 2. Ces debuggers communiquent avec le Flash Debug Player à travers une connexion socket TCP. De manière classique, cela se produit sur une même machine, mais il est aussi possible de debugger à distance, avec une machine sur le client et l'autre qui va lancer le debugger.

15juil/080

Flex Debug – Runtime Errors (Erreurs à l'exécution)

Flash Player 9 supporte la vérification de types et des exceptions à l'exécution. Les erreurs à l'exécution, lorsqu'elles sont identifiées au moment du développement peuvent grandement aider le debug d'applications. Les erreurs à l'exécution de sont pas présentées aux utilisateurs s'ils n'ont pas le Debug Player d'installé, mais pour les besoins de développement et de test, vous devez avoir le Flash Debug Player installé. Le Debug Player va afficher les erreurs à l'exécution en vous présentant une pop-up quand les erreurs se produisent dans l'application Flex.

Vous vous demandez peut-être pourquoi de telles erreurs ne sont pas présentées à l'utilisateur ayant le Flash Player classique. Le fait est qu'Adobe cache de telles erreurs aux utilisateurs classiques pour minimiser leur impact sur l'expérience utilisateur. L'erreur au runtime se produit quand même mais plutôt que d'interrompre l'utilisateur avec une pop-up et stopper son exécution, Flash Player essaie de continuer silencieusement l'exécution du code. Cela ne garantit pas qu'une application va continue à fonctionner, certaines exceptions sont fatales et vont stopper l'application. C'est pourquoi il est généralement pas conseillé de déployer une application qui contient des exceptions runtime non-traitées.

15juil/082

Flex Debug – Debugger avec le Flash Debug Player

Le Flash Debug Player est le cœur des possibilités de debug offertes par Flex. Le Debug Player fournit plusieurs avantages spécifiques aux développeurs, et il est requit dans la plupart des types de debugging que vous ferez. Le plug-in pour les navigateurs (Internet Explorer et Firefox) sont inclus dans le SDK gratuit (dans le dossier /player/debug) et dans le dossier Flex Builder 2/Player/debug si vous utilisez Flex Builder 2. De plus, si vous avez installé Flex Builder 2, le plug-in navigateur du Debug Player est installé par défaut pendant l'installation de FB2. Vous pouvez toujours vérifier que vous avez la dernière version du Debug Player en visitant http://www.adobe.com/support/flashplayer/downloads.html.

Si vous voulez être sur que vous avez la dernière version installée dans un navigateur, vous pouvez créer une application simple qui va vérifier la version du Player installée. Voici un exemple:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" horizontalAlign="center"
	verticalAlign="middle" viewSourceURL="srcview/index.html">
	<mx:Panel title="Flash Players" paddingBottom="15" paddingLeft="15" paddingRight="15" paddingTop="15">
		<mx:Label text="Version de Flash Player: {flash.system.Capabilities.version}, Debug Player: {flash.system.Capabilities.isDebugger}"/>
	</mx:Panel>
</mx:Application>

Flex Source Code Download: Télécharger le code source complet de l'application

This movie requires Flash Player 11

8juil/0842

Flex FileReference – Upload de fichiers avec la méthode upload() et browse()

La méthode FileReference.browse() vous permet d'autoriser l'utilisateur à parcourir ses fichiers pour en sélectionner un à uploader. Vous pouvez aussi utiliser FileReference.browse() pour permettre à l'utilisateur de sélectionner plusieurs fichiers à la fois.

FileReference.browse() permet de choisir un seul fichier alors que FileReferenceList.browse() permet d'en choisir plusieurs

Dans les deux cas (FileReference et FileReferenceList), la fenêtre permettant de parcourir le système de fichiers a deux boutons permettant à l'utilisateur de fermer la boîte de dialogue: Ouvrir et Annuler. L'objet FileReference ou FileReferenceList lancent des événements différents suivant quel bouton est cliqué par l'utilisateur. Si l'utilisateur clique sur le bouton Annuler (Cancel), il lance un événement cancel (Event.CANCEL). Si l'utilisateur clique sur le bouton Open, il lance un événement select (Event.SELECT).