Flash Builder 4 Débutant ? Découvrez Flex 4 et Adobe® Flash® Builder 4

Archive pour le tag 'sdk'

27
août

Hero – Le premier build de Flex 4.5 dévoilé

J'en parlais il y a quelques semaines, la prochaine version du SDK Flex (Flex 4.5) sera nommée Hero. Celle-ci comportera notamment des composants pour plate-formes mobiles bien pratiques. Pour plus d'informations, lire ce billet:

Hero – Le prochain Flex SDK (4.5) avec composants pour mobiles

Et aujourd'hui, la Product Manager de Flex, Deepa Subramaniam a annoncé sur son blog, le premier build public de ce SDK:

Exciting Developments with Hero

Ce build (4.5.0.17077) peut être téléchargé sur le site Open Source @ Adobe:

Télécharger le dernier build de Hero Flex 4.5

Ce build est le premier, il est donc incomplet et sûrement buggé. Pas de composants mobiles dans cette version (pour l'instant!), voici les fonctionnalités implémentées:

Je suis allé jeter un coup d'oeil sur les documentations (encore incomplètes elles aussi) et les composants Image et DataGrid sont vraiment cool!

Notamment la possibilité de donner une SkinPart à une image pour l'affichage du preloading de l'image. Plus besoin de faire une nouvelle classe qui va hériter de Image pour cela. Notez aussi que ce composant Image intègre directement une mise en cache des éléments chargés. Ici aussi, on aura plus besoin de SuperImage et autres.

Le composant Spark DataGrid est lui, le remplaçant de la DataGrid mais aussi, à terme, de l'AdvancedDataGrid. Lisez les specifications, les modifications apportées ont du sens :) .

Pour l'instant, ils ont trouvé le set de couleurs le plus moche pour les couleurs de rollover / selection de base :P :

hero-1

12
juil

Air Android – Visualiser la géolocalisation GPS sur Google Maps avec Air

Maintenant que vous savez créer une application Air pour Android qui sait accéder à Internet et récupérer les données GPS du téléphone, il est temps de faire une application qui va afficher la position de l'utilisateur sur une carte Google Maps.

Si vous créez une application Android Native en Java, vous avez directement à votre disposition, un composant carte basé sur Google Maps. Heureusement, nous sommes basé sur l'API Flash Player et Flex. Nous pouvons donc utiliser toutes les librairies AS3 / Flex que l'on peut trouver sur le net. Ce n'est par exemple pas possible avec OpenPlug qui se base sur sa propre implémentation de Flex (en gros). Bref, on va commencer par récupérer la librairie Google Maps et une clé développeur afin de développer.

Les clés API Google Maps

Pour pouvoir utiliser l’API, vous devez récupérer une clé API. Celle-ci va permettre à Google de vous identifier lorsque vous allez utiliser les services Google. Chaque clé API est liée à un nom de domaine. Quand vous travaillez dans Flash Builder, vous allez exécuter votre application Flex en local, pas besoin de clé dans ce cas. Dès que vous serez sur un serveur distant, il vous faudra générer une clé API Google Maps, sans quoi aucune carte ne s’affichera.

Google Maps est un service gratuit pour toute application à accès public, gratuit, et à but non commercial. Si vous comptez l’utiliser pour un intranet ou dans le cadre d’une application commerciale, vous devrez payer la redevance Google Maps (environ 8000 euros / an) :
http://code.google.com/intl/fr/apis/maps/terms.html

Pour générer une clé Google Maps API, veuillez vous rendre à l’adresse (comme adresse, donnez http://localhost, voir explication plus loin):

http://code.google.com/intl/fr/apis/maps/signup.html

Préparation du projet Flex

Pour pouvoir utiliser l’API Google Maps, il suffit de télécharger la librairie Google Maps au format SWC :

http://maps.googleapis.com/maps/flash/release/sdk.zip

Dans cette archive, vous allez trouver :

  • La documentation, au format ASDoc (/docs/index.html)
  • Le SDK Google Maps, au format SWC (/lib/ map_flex_1_18.swc)

Dans Flash Builder, prenez le projet AirGeoloc que vous pouvez télécharger dans le tutorial précédent. De base, Flash Builder va créer un dossier « libs » dans votre projet. Copiez la librairie Google Maps (map_flex_1_18.swc) et collez-le dans le dossier libs de votre projet.

Si vous voulez utiliser votre propre application, n'oubliez pas de modifier les permissions du descripteur XML comme expliqué dans le tutorial précédent.

Les projets créés avec Flash Builder sont configurés automatiquement pour avoir le dossier « libs » dans leur Library Path. Vous n’avez ainsi pas à modifier les propriétés de votre projet pour qu’il reconnaisse les classes de la librairie.

Création de la carte Google Maps

Pour commencer, on va ajouter le composant principal de Google Maps, le composant « Map ».
Placez votre curseur à l’intérieur du tag <s:Application>, et commencez à taper "<maps:M". Si vous avez bien ajouté la librairie Google Maps, vous devriez avoir l’auto-complétion :

air-gmaps-1

Dans la liste, sélectionnez le premier élément : <maps:Map – com.google.maps. Une fois sélectionné, vous verrez que Flash Builder va automatiquement ajouter le namespace correspondant à la librairie Google Maps : xmlns:maps="com.google.maps.*"

Si vous n’avez pas d’auto-complétion lors de la frappe sur les classes Google Maps, cela signifie que vous n’avez pas intégré le fichier SWC dans votre projet. Vérifiez le Library Path de votre projet (Clic droit sur le projet > Properties > Library Path).

Ajoutez quelques propriétés (hauteur, largeur, clé API Google Maps) :

<maps:Map id="map" width="100%" height="100%" key="Votre clé Google Maps API ici" url="http://localhost" />

Notez que le paramètre "url" est spécifique à une utilisation dans Air qui n'est pas contenue dans un browser. L'API Google Maps ne peut donc pas détecter si votre clé correspond à l'URL que vous avez entré à la génération de la clé. Donnez simplement http://localhost comme url.

Lancez votre application, vous verrez apparaitre une carte du monde :

air-gmaps-2

Récupération des informations de géolocalisation

On a vu comment récupérer les informations de géolocalisation dans le tutorial précédent. Pour être sur de ne pas se centrer sur la carte avant que la carte ne soit initialisée, on va cette fois faire notre code non pas sur le APPLICATION_COMPLETE de l'application mais sur l'évènement "mapevent_mapready" envoyé par l'objet Map.

Voici donc le code qui va permette de récupérer ces informations puis de se centrer sur la position donnée:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
                width="100%" height="100%" xmlns:maps="com.google.maps.*">
  <mx:Script>
    <![CDATA[
      import com.google.maps.LatLng;
      import com.google.maps.MapEvent;
      import com.google.maps.controls.MapTypeControl;
      import com.google.maps.controls.PositionControl;
      import com.google.maps.controls.ZoomControl;

      import flash.sensors.Geolocation;

      import mx.controls.Alert;
      import mx.events.FlexEvent;

      private var _geolocation:Geolocation = null;
      protected function map_mapevent_mapreadyHandler(event:MapEvent):void{
        map.addControl(new ZoomControl);
        map.addControl(new PositionControl);

        if (Geolocation.isSupported){
          _geolocation = new Geolocation;
          // on va vérifier toutes les secondes
          _geolocation.setRequestedUpdateInterval(1000);
          _geolocation.addEventListener(GeolocationEvent.UPDATE, geolocationUpdateHandler);
        } else {
          Alert.show("Votre appareil ne supporte pas la Géolocalisation");
        }
      }
      private function geolocationUpdateHandler(event:GeolocationEvent):void{
        // création d'un objet Google Maps LatLng
        var latLng:LatLng = new LatLng(event.latitude, event.longitude);
        // 26 = zoom maximal
        map.setCenter(latLng, 14);
        Alert.show("Nouvelle position utilisateur: " + latLng.toString());
      }

    ]]>
  </mx:Script>
  <maps:Map id="map" key="ABQIAAAA5oy7BOLSV2Fc9rlLk28UhxT2yXp_ZAY8_ufC3CFXhHIE1NvwkxSxQ6IB9tYvqvxz85ErZa6QsZxWVw" width="100%" height="100%"
            url="http://localhost"
            mapevent_mapready="map_mapevent_mapreadyHandler(event)"/>
</mx:Application>

Lire la suite: 'Air Android – Visualiser la géolocalisation GPS sur Google Maps avec Air'

06
juil

Hero – Le prochain Flex SDK (4.5) avec composants pour mobiles

Adobe a annoncé il y a quelques jours la prochaine release du Flex SDK qui a pour nom de code "Hero" (enfin les evangelists Adobe l'ont annoncé, les evangelists français ayant l'air d'être parti en vacances ou de s'en tamponner en espérant que tout le monde lise l'actualité Adobe US mais c'est un autre débat !).

Cette prochaine release, qui serait vraisemblablement une Flex SDK 4.5 et pas un Flex 5 (qui doit être sur un cycle plus long) prend en fait la place de Slider qui nous avait été annoncé l'année dernière.

Slider / Hero: 2 philosophies différentes

Au départ, lors des présentations de Slider, l'idée qu'Adobe allait créer un nouveau framework complètement optimisé pour les problématiques mobiles (résolutions, changement d'orientation, vues, …). Ce nouveau framework allait donc partir sur de nouvelles bases et proposer de nombreuses options supplémentaires pour la gestion des environnements mobiles. Au départ de ce projet, nous étions encore à l'époque de Flex 3, ne contenant aucune optimisation de ressources en Web (par rapport à Flex 4). Les performances d'une applications Flex 3 sur les mobiles de l'époque auraient donc été très mauvaises.

Mais pendant ce temps, le progrès avance et les technologies mobiles aussi. Aujourd'hui, on peut trouver des processeurs cadencés à 1Ghz sur un Nexus One par exemple et suffisamment de RAM pour faire tourner pas mal d'applications simultanément. Le SDK Flex a aussi évolué. Il est devenu plus "light" avec des composants de base beaucoup plus légers. Flash Player 10.1 est lui aussi sorti avec un gain de performances ressenti et surtout, il est shippé avec Android 2.2.

A la vue de ces changements, Adobe a pris la décision (la bonne, selon moi) de ne pas créer un nouveau framework mais de bâtir sur les briques existantes du SDK Flex.

Les fonctionnalités du SDK Hero

Plusieurs points sont mis en avant pour cette nouvelle version du SDK. Voici quelques liens pouvant vous intéresser:

Introducing…Hero!

Hero Mobile Application – Functional and Design Specification

Hero View & ViewNavigator – Functional and Design Specification

Mobile ActionBar – Functional and Design Specification

Développement multi-écran

Ajout de fonctionnel au framework Flex pour la gestion des environnements mobiles afin d'obtenir des applications "unifiées", c'est-à-dire qui auront un rendu quasi-identique suivant la résolution de l'écran par exemple.

Développement de nouveaux composants Spark

La nouvelle architecture Spark (Flex 4) permet de créer des composants dont le comportement est complètement séparé de l'apparence. Mais il manque encore des composants (Form, Image, DataGrid…) à la mode Spark (entre temps, on peut utiliser les composants MX à la place). Ces composants feront leur apparition dans la nouvelle version du SDK.

Vous pouvez voir notamment dans la page sur le composant ViewNavigator que l'on est bien dans un contexte de développement mobile avec par exemple la gestion des écrans, totalement optimisée pour correspondre à ce que l'on pourrait créer avec le SDK Android Java.

Lire la suite: 'Hero – Le prochain Flex SDK (4.5) avec composants pour mobiles'

01
juil

Flex 4 – Sortie du SDK Flex 4.1

La dernière version du SDK Flex est sortie aujourd'hui: Flex SDK 4.1. Vous l'aurez directement avec la mise à jour de Flash Builder 4 mais si vous souhaitez la télécharger à la main, vous la trouverez sur le site de téléchargement d'Adobe:

Flex 4 Downloads

Cette version est importante car c'est la première grosse release depuis Flex 4 il y a quelques mois. Les développeurs du Flex SDK ont écouté les demandes des utilisateurs et ont corrigé énormément de bugs! Parmi ces bugs, pas mal de bugs sur le nouveau Text Layout Framework et des regressions / problèmes de performances. Rajoutez à cela le support natif des APIs Flash Player 10.1 et Air 2, vous avez une bonne release devant vous.

Si vous êtes curieux, voici la liste des bugs corrigés par Flex 4.1:

Issue Navigator – SDK: Bugs Fixed in 4.1

Il y a aussi quelques améliorations notables telles que le support du "mirroring", permettant d'inverser les zones de textes pour les langages tels que l'arabe, hébreu (de droite à gauche):

Flex 4 – Layout Mirroring pour texte right-to-left (Hébreu, Arabe, …)

01
juil

Flash Builder 4 – Mise à jour en version 4.0.1 (bugfixes)

Grâce à l'Adobe Updater qui se lance au démarrage, vous avez peut-être vous aussi eu droit ce matin à la mise à jour de Flash Builder 4 en version 4.0.1.

Une jolie interface vous propose donc de mettre  à jour ce produit Adobe:

update-1

261 Mo plus tard, votre Flash Builder sera donc en version 4.0.1. Comme l'indique le numéro de version, on a ici affaire à une évolution mineure de Flash Builder. Principalement, elle apporte le support des nouvelles API Flash Player 10.1, Flex SDK 4.1 et Air 2.

Une fois la mise à jour, vous aurez donc directement à votre disposition la nouvelle version du SDK Flex 4.1. Je vous conseille vivement d'utiliser cette version qui corrige de très nombreux bugs.

Il faut quand même noter que le processus de mise à jour fonctionne bien mieux que celui de Flex Builder 3 qui était beaucoup plus manuel.

Et sinon, pas mal de bugs ont été corrigés dans cette version Flash Builder 4.0.1:

Flash Builder 4.0.1 fixed issues

En voici les principales:

ASDebugger

FB-25896 Watchpoints don’t turn off when you toggle "Skip All Breakpoints"

FB-21879 Failed to connect error when launching debugger

FB-26376 Debug player check is undertaken on browser player when debugging with standalone

Project Definition

FB-24024 Changing sever settings corrupts projects settings

Project: Server Project Wizard

FB-26083 Error "Call to a possibly undefined method arrayCompare through a reference with static type Class" when creating model driven applications

Network Monitor

FB-26258 Null pointer exception is thrown when network monitor source navigation tries to open the source when another source file is

Lire la suite: 'Flash Builder 4 – Mise à jour en version 4.0.1 (bugfixes)'




Bientôt sur flex-tutorial.fr …

  • - Tutoriaux BlazeDS
  • - Composants Flex

tutorial flex tutorial flex

flex Adobe Air AFCS Data Filter Lib ToasterLib librairies AS3 Flex livres AS3 Flex

 

septembre 2010
L Ma Me J V S D
« août    
 12345
6789101112
13141516171819
20212223242526
27282930  

Catégories