SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
Nouveautés Flex, Flash Builder et AIR
      Michaël Chaize | Adobe Platform Evangelist




©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Michaël Chaize


                                                                               @mchaize




                                                                             RIAgora.com

©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.       2
Les limites de Google translate




©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.   3
Menu du jour




                                                                                 Flash Builder “Burrito”

                                                                                 Flex “Hero”

                                                                                 Adobe AIR




©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.   4
Flash Builder “Burrito”




© 2010 Adobe Systems Incorporated. All Rights Reserved.
Productivity features




                                                          for AS3                               Gener
                                                                                                     ate ev
                               e                                                                              ent h a
                         m plat                                           s                                          ndler
                  d e te                                        e   t hod
         Co                                              m                                      Renam
                                       e           m ent                                                e varia
                          I        mpl                                                                         ble / fi
                                                                                                                       le
                     ide/
    O verr                                                                                    Metad
                                                     s / file                                       ata cod
                   e                a cl as                                                                 e com
                                                                                                                   pletio
            en erat                                                                                                         n
       G

                                                                              Quick Assists




© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flex “Hero”




© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flex “Hero” > les objectifs




Application performantes sur smartphones

Continuer de faire évoluer les composants Spark
Améliorer le framework pour les applications d’envergure




© 2010 Adobe Systems Incorporated. All Rights Reserved.
<s:DataGrid>

<s:DataGrid>
      §   Basic skinning contract

               §   Selection, hover, row/column separator, caret and row
                    background graphics are skinnable

      §   Support for native and custom item renderers

      §   Single, multiple, cell & row-based selection

      §   Supports dynamic data provider

      §   Horizontal and vertical scrolling, integration with layout

      §   User interaction via the mouse and keyboard




 © 2010 Adobe Systems Incorporated. All Rights Reserved.                9
Anatomie de la Datagrid

             Caret Indicator                              Selection Indicator            Hover Indicator




  Row
Separator




                        Column Separator                                        Item Renderer

© 2010 Adobe Systems Incorporated. All Rights Reserved.               10
Anatomie de la Datagrid



                                                                            Sort Indicator




            Column Header Group                           Header Renderer   Column Separator




© 2010 Adobe Systems Incorporated. All Rights Reserved.       11
<s:Form>

§   Spark Form
        §   Advanced custom layout to support dynamic form columns that can
             appear “on the fly” (help content, required content indicators)

        §   Horizontal and stacked layout support

        §   Sequenced form items

        §   Baseline alignment for form item content

        §   Declarative skinning for normal, error, disabled and required states




© 2010 Adobe Systems Incorporated. All Rights Reserved.                12
<s:Image>

§   Spark Image
        §   Skinning contract allows for custom image
             presentation

        §   Provide an extensible caching and queueing
             mechanism for loading content

        §   Enhancements to the BitmapImage primitive

                 §   Load remote or untrusted sources

                 §   Support high-quality scaling             ContentCache
                                                                  §   maxCacheEntries
                                                                  §   enableQueuing
                                                                  §   enableCaching
                                                                  §   maxActiveRequests




© 2010 Adobe Systems Incorporated. All Rights Reserved.   13
Meilleure gestion des RSLs

Hero RSL Enhancements
       §   Compiler will smartly remove unnecessary RSLs

                       (-remove-unused-rsls=true)

       §   Compiler will recognize when RSLs have been loaded by the
            parent application reloading by child apps

       §   Framework refactoring into more RSLs (improves SWF size and                                   DayTrader.mxml
            startup time)
                                                                             AccountingModule.mx
       §   Allow usage of RSLs when modifying core framework classes (ie:            ml
            monkey-patching).


                                                                                                 framework.swc               osmf.swc




                                                                                          spark.swc         sparkskins.swc




© 2010 Adobe Systems Incorporated. All Rights Reserved.            14
Advanced Capabilities


Spark Module & ModuleLoader
      Module extends SkinnableContainer


<s:Module>



<mx:TabNavigator width="500" height="300">
             <s:ModuleLoader label="Tab One" url="SparkModule1.swf"/>
             <s:ModuleLoader label="Tab Two" url="SparkModule2.swf"/>
</mx:TabNavigator>




© 2010 Adobe Systems Incorporated. All Rights Reserved.   15
Advanced Capabilities


Size Report

<?xml version="1.0" encoding="UTF-8"?>
<report>
   <swf size="74624" compressedSize="38485">
     <headerData totalSize="533">
        <data type="metaData" size="465"/>
        <data type="productInfo" size="28"/>
     </headerData>
     <frames totalSize="74091">
        <frame name="_RTest_mx_managers_SystemManager" size="56409" frame="1"/>
        <frame name="RTest" size="17682" frame="2"/>
     </frames>



© 2010 Adobe Systems Incorporated. All Rights Reserved.   16
Flex on mobile ?
AIR extends the benefits of Flash Player

‣ Richer and more engaging
    user experiences out of
    the browser                                                            Geo-Location
                                                                               SQLite
                                                                 Application Update Framework
‣ Empower Flash developers                                              Application Lifecycle
    to deploy applications in                             .AIR File format for multi-screen applications
                                                              Enhanced Application Security model
    app catalogs                                                      Marketplace Distribution
                                                                Mobile Hardware Softkey Support
‣ Leverage desktop AIR app                                        File-System Access (if allowed)
                                                                          MediaLibrary API
    ecosystem                                                            Native Extensibility


‣ Shared codebase and
    porting with Flash Player
                                                                   ActionScript3 Support
                                                             Memory, battery & CPU optimizations
                                                               Audio/Video hardware decoding
                                                                Optimized SWF management
                                                                  Multi-touch and Gestures
                                                                   Hardware Acceleration
                                                                     Mobile Text input
© 2010 Adobe Systems Incorporated. All Rights Reserved.
AIR for BlackBerry PlayBook



                                                                                    WIN A PLAYBOOK !!!




                                       http://us.blackberry.com/developers/tablet/devresources.jsp


© 2010 Adobe Systems Incorporated. All Rights Reserved.
Mobile Applications in "Hero"

                 s:Application                            s:MobileApplication   s:TabbedMobileApplication




© 2010 Adobe Systems Incorporated. All Rights Reserved.              20
MobileApplication and TabbedMobileApplication

§   View stack metaphor
     §   View
     §   ViewNavigator / TabbedViewNavigator


§   Built-in mobile navigation experience
     §   Action bar
     §   Back button
     §   Transitions
     §   APIs




© 2010 Adobe Systems Incorporated. All Rights Reserved.   21   1
ViewNavigator API




§   navigator.pushView();
§   navigator.popView();
§   navigator.popToFirstView()


§   navigator.activeView;




© 2010 Adobe Systems Incorporated. All Rights Reserved.   22   2
ActionBar




                       navigationContent                  titleContent        actionContent



<s:View xmlns:fx=http://ns.adobe.com/mxml/2009 …
         title=”Expenses">

                          <s:navigationContent>
                                    <s:Button icon="@Embed('assets/home.png')"/>
                          </s:navigationContent>

                          <s:actionContent>
                                    <s:Button label=”+"/>
                          </s:actionContent>

</s:View>
© 2010 Adobe Systems Incorporated. All Rights Reserved.         23                            3
Components that have Mobile Skins

§   Button
§   CheckBox
§   DataGroup
§   Group/HGroup/VGroup/TileGroup
§   Image/BitmapImage
§   Label List
§   RadioButton/RadioButtonGroup
§   Scroller
§   TextArea
§   TextInput




© 2010 Adobe Systems Incorporated. All Rights Reserved.   24
View Lifecycle




                                                              View Destroyed
                         View becomes                                          User navigates
                         active                                                back to view
                                                          Another view
                                                          becomes active
                                                View
                                               Created                             View Recreated




                                           data



§   Alternative option: destructionPolicy=“none”

© 2010 Adobe Systems Incorporated. All Rights Reserved.           25                                3B
Mobile ItemRenderers


                                                          §   MobileItemRenderer
                                                          §   MobileIconItemRenderer


                                                          <s:MobileIconItemRenderer
                                                                     labelField="lastName"
                                                                     messageField="title"
                                                                     iconField="picture"
                                                                     decoratorClass=”phoneIcon">




© 2010 Adobe Systems Incorporated. All Rights Reserved.         26                                 4
APIs pour le mobile




© 2010 Adobe Systems Incorporated. All Rights Reserved.   27
GEO APIs

§   Android Permission Required:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-
permission android:name="android.permission.ACCESS_FINE_LOCATION" />

§   Geolocation.isSupported
§   g.addEventListener(GeolocationEvent.UPDATE, callbackFunction);
§   GeolocationEvent:
     §   altitude

     §   heading

     §   horizontalAccuracy

     §   latitude

     §   longitude

     §   speed

     §   timestamp

     §   verticalAccuracy


© 2010 Adobe Systems Incorporated. All Rights Reserved.
Accelerometer APIs

§   Accelerometer.isSupported
§   a.addEventListener(AccelerometerEvent.UPDATE, callbackFunction);
§   AccelerometerEvent:
     §   accelerationX
     §   accelerationY
     §   accelerationZ
     §   timestamp




© 2010 Adobe Systems Incorporated. All Rights Reserved.
Multi-Touch APIs

§     Android manifest change:
<uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch"/>

§     Gesture OR Multitouch --- Multitouch.inputMode


  §   MultitouchInputMode.GESTURE                                     §   MultitouchInputMode.TOUCH_POINT

       §   TransformGestureEvent                                            §   TouchEvent

            §   GESTURE_PAN                                                        §   TOUCH_BEGIN

            §   GESTURE_ROTATE                                                     §   TOUCH_END

            §   GESTURE_SWIPE                                                      §   TOUCH_MOVE

            §   GESTURE_ZOOM                                                       §   TOUCH_OUT

       §   GestureEvent.GESTURE_TWO_FINGER_TAP                                     §   TOUCH_OVER

       §   PressAndTapGestureEvent.GESTURE_PRESS_AND_TAP                           §   TOUCH_ROLL_OUT

                                                                                    §   TOUCH_ROLL_OVER

                                                                                    §   TOUCH_TAP



© 2010 Adobe Systems Incorporated. All Rights Reserved.
Remote Data

§   Android Permission Required:
     <uses-permission android:name="android.permission.INTERNET"/>
§   Standard Flex Networking Libraries:
     §   HTTPService
     §   WebService
     §   RemoteObject




© 2010 Adobe Systems Incorporated. All Rights Reserved.
Full Screen & Orientation

§   stage.displayState = StageDisplayState.NORMAL
§   stage.displayState = StageDisplayState.FULL_SCREEN
§   stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE


§   StageOrientationEvent:
stage.addEventListener(StageOrientationEvent.ORIENTATION_CHANGE, callbackFunction);

§   foo-app.xml:
                          <initialWindow>
                                                   <autoOrients>true</autoOrients>




© 2010 Adobe Systems Incorporated. All Rights Reserved.
Camera Access

§   Camera - Raw camera feed
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" android:required="true"/>
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
<uses-feature android:name="android.hardware.camera.flash" android:required="false"/>

§   CameraUI - Native Camera App
var cameraUI:CameraUI = new CameraUI();
cameraUI.launch(MediaType.IMAGE);

§   CameraRoll - Choose photos from the device's camera roll
var cameraRoll:CameraRoll = new CameraRoll();
cameraRoll.browseForImage();
cameraRoll.addBitmapData(bd);




© 2010 Adobe Systems Incorporated. All Rights Reserved.   33
Native App Integration

§   Open Email, Browser, Maps, Phone, or SMS
     §   navigateToURL(new URLRequest('mailto:foo@bar.com'));
     §   navigateToURL(new URLRequest('http://www.jamesward.com'));
     §   navigateToURL(new URLRequest('http://maps.google.com/'));
     §   navigateToURL(new URLRequest('tel:1234567890'));
     §   navigateToURL(new URLRequest('sms:1234567890'));




© 2010 Adobe Systems Incorporated. All Rights Reserved.   34
Local DB APIs

§   SQLite - Nothing different than AIR for the Desktop
§   SQLConnection
     §   Sync and/or Async connections

§   SQLStatement
     §   Prepared Statements:

var stmt:SQLStatement = new SQLStatement();
stmt.sqlConnection = FlexGlobals.topLevelApplication['sqlConnection'];
stmt.text = "INSERT into giberish values(:giberish)";
stmt.parameters[":giberish"] = g.text;
stmt.execute();




© 2010 Adobe Systems Incorporated. All Rights Reserved.
StageWebView

§   Requires Android INTERNET permission:
<uses-permission android:name="android.permission.INTERNET" />
§   WebStageView.isSupported
var swv:StageWebView = new StageWebView();
swv.viewPort = new Rectangle(0, stage.height - height, width, height);
swv.stage = stage;
swv.loadURL("http://www.jamesward.com");




© 2010 Adobe Systems Incorporated. All Rights Reserved.   36
Deployment

§   ADT is the AIR packager (apk target only available in AIR 2.5):
adt -package -target apk -storetype pkcs12 -keystore a.p12 a.apk a-app.xml a.swf

§   ADB is the Android SDK deployer
adb install -r a.apk




© 2010 Adobe Systems Incorporated. All Rights Reserved.   37
Debugging

§   adb logcat
§   trace() and errors - only with apk-debug target




© 2010 Adobe Systems Incorporated. All Rights Reserved.   38
Deploying to the Android Market




© 2010 Adobe Systems Incorporated. All Rights Reserved.   39
LET’S CODE A FLEX MOBILE APP




© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
labs.adobe.com
Download Flash Builder “Burrito” and Flex “Hero”

            Get the source code of
             Tour de Mobile Flex

       Check the Flex “Hero” tutorials on
             developer.adobe.com

  Free Flex 4 trainings in Belgium and seminars
             http://bit.ly/ria_update
Si vous souhaitez me contacter


                                                                              @mchaize




                                                                             RIAgora.com

©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.        42

Contenu connexe

Tendances

Back From MAX in London for CQ5 users
Back From MAX in London for CQ5 usersBack From MAX in London for CQ5 users
Back From MAX in London for CQ5 users
Michael Chaize
 
Flex 4.5 and mobile development
Flex 4.5 and mobile developmentFlex 4.5 and mobile development
Flex 4.5 and mobile development
Michael Chaize
 

Tendances (20)

Jax2001 adobe keynote
Jax2001 adobe keynoteJax2001 adobe keynote
Jax2001 adobe keynote
 
Adobe flex at jax london 2011
Adobe flex at  jax london 2011Adobe flex at  jax london 2011
Adobe flex at jax london 2011
 
Fatc - Productivity by Design
Fatc - Productivity by DesignFatc - Productivity by Design
Fatc - Productivity by Design
 
Xplatform mobile development
Xplatform mobile developmentXplatform mobile development
Xplatform mobile development
 
Oop2012 keynote Design Driven Development
Oop2012 keynote Design Driven DevelopmentOop2012 keynote Design Driven Development
Oop2012 keynote Design Driven Development
 
Flex mobile for JUG
Flex mobile for JUGFlex mobile for JUG
Flex mobile for JUG
 
Flex presentation for Paris Android User group PAUG
Flex presentation for Paris Android User group PAUGFlex presentation for Paris Android User group PAUG
Flex presentation for Paris Android User group PAUG
 
Adobe et la stratégie multi-écrans
Adobe et la stratégie multi-écransAdobe et la stratégie multi-écrans
Adobe et la stratégie multi-écrans
 
Montpellier - Flex UG
Montpellier - Flex UGMontpellier - Flex UG
Montpellier - Flex UG
 
Eva flex java_1_slides
Eva flex java_1_slidesEva flex java_1_slides
Eva flex java_1_slides
 
Back From MAX in London for CQ5 users
Back From MAX in London for CQ5 usersBack From MAX in London for CQ5 users
Back From MAX in London for CQ5 users
 
Fm Mc Presentation Ria2008
Fm Mc   Presentation Ria2008Fm Mc   Presentation Ria2008
Fm Mc Presentation Ria2008
 
Over the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for AndroidOver the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for Android
 
Flex 4.5 and mobile development
Flex 4.5 and mobile developmentFlex 4.5 and mobile development
Flex 4.5 and mobile development
 
Using design pattern for mobile
Using design pattern for mobileUsing design pattern for mobile
Using design pattern for mobile
 
Develop multi-screen applications with Flex
Develop multi-screen applications with Flex Develop multi-screen applications with Flex
Develop multi-screen applications with Flex
 
Breizh camp adobe flex et les mobiles
Breizh camp   adobe flex et les mobilesBreizh camp   adobe flex et les mobiles
Breizh camp adobe flex et les mobiles
 
Adobe Max 2008 Cross Channel Campaigns
Adobe Max 2008 Cross Channel CampaignsAdobe Max 2008 Cross Channel Campaigns
Adobe Max 2008 Cross Channel Campaigns
 
Process in the Age of Digital Innovation
Process in the Age of Digital InnovationProcess in the Age of Digital Innovation
Process in the Age of Digital Innovation
 
Enterprise Flex applications on tablet devices
Enterprise Flex applications on tablet devicesEnterprise Flex applications on tablet devices
Enterprise Flex applications on tablet devices
 

En vedette

Martin karlssons vykortssamling ångbåtsbryggan och stranden
Martin karlssons vykortssamling   ångbåtsbryggan och strandenMartin karlssons vykortssamling   ångbåtsbryggan och stranden
Martin karlssons vykortssamling ångbåtsbryggan och stranden
hembygdsigtuna
 
Martin karlssons vykortssamling sigtunaskolan
Martin karlssons vykortssamling   sigtunaskolanMartin karlssons vykortssamling   sigtunaskolan
Martin karlssons vykortssamling sigtunaskolan
hembygdsigtuna
 
Uchitelska Prezentacia
Uchitelska PrezentaciaUchitelska Prezentacia
Uchitelska Prezentacia
mazur_taja
 
我感恩Thanksgiving
我感恩Thanksgiving我感恩Thanksgiving
我感恩Thanksgiving
nonnon
 
онтологии верхнего уровня
онтологии верхнего уровняонтологии верхнего уровня
онтологии верхнего уровня
Lidia Pivovarova
 
Feedback Movie Ppt Version Sample
Feedback Movie Ppt Version SampleFeedback Movie Ppt Version Sample
Feedback Movie Ppt Version Sample
Andrew Schwartz
 

En vedette (18)

Ria2010 keynote développeurs
Ria2010 keynote développeursRia2010 keynote développeurs
Ria2010 keynote développeurs
 
Martin karlssons vykortssamling ångbåtsbryggan och stranden
Martin karlssons vykortssamling   ångbåtsbryggan och strandenMartin karlssons vykortssamling   ångbåtsbryggan och stranden
Martin karlssons vykortssamling ångbåtsbryggan och stranden
 
Martin karlssons vykortssamling sigtunaskolan
Martin karlssons vykortssamling   sigtunaskolanMartin karlssons vykortssamling   sigtunaskolan
Martin karlssons vykortssamling sigtunaskolan
 
36.Ke.Nhan.Hoa
36.Ke.Nhan.Hoa36.Ke.Nhan.Hoa
36.Ke.Nhan.Hoa
 
大家行04
大家行04大家行04
大家行04
 
Zadanie 4
Zadanie 4Zadanie 4
Zadanie 4
 
2. open innov whatisit
2. open innov whatisit2. open innov whatisit
2. open innov whatisit
 
Atestace infromačních systémů veřejné správy
Atestace infromačních systémů veřejné správyAtestace infromačních systémů veřejné správy
Atestace infromačních systémů veřejné správy
 
Babies Sculptures (by Camille Allen)
Babies Sculptures (by Camille Allen)Babies Sculptures (by Camille Allen)
Babies Sculptures (by Camille Allen)
 
Uchitelska Prezentacia
Uchitelska PrezentaciaUchitelska Prezentacia
Uchitelska Prezentacia
 
我感恩Thanksgiving
我感恩Thanksgiving我感恩Thanksgiving
我感恩Thanksgiving
 
A Tweet Analysis: @Scobleizer
A Tweet Analysis: @ScobleizerA Tweet Analysis: @Scobleizer
A Tweet Analysis: @Scobleizer
 
AOD Workplace Modern Sample Final
AOD Workplace Modern Sample FinalAOD Workplace Modern Sample Final
AOD Workplace Modern Sample Final
 
онтологии верхнего уровня
онтологии верхнего уровняонтологии верхнего уровня
онтологии верхнего уровня
 
The future of the Adobe Flash platform
The future of the Adobe Flash platformThe future of the Adobe Flash platform
The future of the Adobe Flash platform
 
Kuznetcov
KuznetcovKuznetcov
Kuznetcov
 
Feedback Movie Ppt Version Sample
Feedback Movie Ppt Version SampleFeedback Movie Ppt Version Sample
Feedback Movie Ppt Version Sample
 
Boyarsky
BoyarskyBoyarsky
Boyarsky
 

Similaire à Ria2010 workshop dev mobile

Greenplum Database on HDFS
Greenplum Database on HDFSGreenplum Database on HDFS
Greenplum Database on HDFS
DataWorks Summit
 
Adobe AIR - Mobile Performance – Tips & Tricks
Adobe AIR - Mobile Performance – Tips & TricksAdobe AIR - Mobile Performance – Tips & Tricks
Adobe AIR - Mobile Performance – Tips & Tricks
Mihai Corlan
 

Similaire à Ria2010 workshop dev mobile (20)

MXNet Paris Workshop - Intro To MXNet
MXNet Paris Workshop - Intro To MXNetMXNet Paris Workshop - Intro To MXNet
MXNet Paris Workshop - Intro To MXNet
 
Automating Oracle Database deployment with Amazon Web Services, fabric, and boto
Automating Oracle Database deployment with Amazon Web Services, fabric, and botoAutomating Oracle Database deployment with Amazon Web Services, fabric, and boto
Automating Oracle Database deployment with Amazon Web Services, fabric, and boto
 
NLJUG: Content Management, Standards, Opensource & JCP
NLJUG: Content Management, Standards, Opensource & JCPNLJUG: Content Management, Standards, Opensource & JCP
NLJUG: Content Management, Standards, Opensource & JCP
 
Amazon SageMaker Deep Dive - Meetup AWS Toulouse at D2SI
Amazon SageMaker Deep Dive - Meetup AWS Toulouse at D2SIAmazon SageMaker Deep Dive - Meetup AWS Toulouse at D2SI
Amazon SageMaker Deep Dive - Meetup AWS Toulouse at D2SI
 
Flash And Dom
Flash And DomFlash And Dom
Flash And Dom
 
Pivotal: Virtualize Big Data to Make the Elephant Dance
Pivotal: Virtualize Big Data to Make the Elephant DancePivotal: Virtualize Big Data to Make the Elephant Dance
Pivotal: Virtualize Big Data to Make the Elephant Dance
 
Hello Gumbo
Hello GumboHello Gumbo
Hello Gumbo
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
 
Open Architecture in the Adobe Marketing Cloud - Summit 2014
Open Architecture in the Adobe Marketing Cloud - Summit 2014Open Architecture in the Adobe Marketing Cloud - Summit 2014
Open Architecture in the Adobe Marketing Cloud - Summit 2014
 
Uml to code with acceleo
Uml to code with acceleoUml to code with acceleo
Uml to code with acceleo
 
RESTful Services and Distributed OSGi - 04/2009
RESTful Services and Distributed OSGi - 04/2009RESTful Services and Distributed OSGi - 04/2009
RESTful Services and Distributed OSGi - 04/2009
 
IBM Spark Meetup - RDD & Spark Basics
IBM Spark Meetup - RDD & Spark BasicsIBM Spark Meetup - RDD & Spark Basics
IBM Spark Meetup - RDD & Spark Basics
 
Flex 3 Deep Dive
Flex 3 Deep DiveFlex 3 Deep Dive
Flex 3 Deep Dive
 
Greenplum Database on HDFS
Greenplum Database on HDFSGreenplum Database on HDFS
Greenplum Database on HDFS
 
AWS Partner Presentation - Accenture Digital Supply Chain In The Cloud
AWS Partner Presentation - Accenture Digital Supply Chain In The CloudAWS Partner Presentation - Accenture Digital Supply Chain In The Cloud
AWS Partner Presentation - Accenture Digital Supply Chain In The Cloud
 
Xebia adobe flash mobile applications
Xebia adobe flash mobile applicationsXebia adobe flash mobile applications
Xebia adobe flash mobile applications
 
Lego Cloud SAP Virtualization Week 2012
Lego Cloud SAP Virtualization Week 2012Lego Cloud SAP Virtualization Week 2012
Lego Cloud SAP Virtualization Week 2012
 
Building a right sized, do-anything runtime using OSGi technologies: a case s...
Building a right sized, do-anything runtime using OSGi technologies: a case s...Building a right sized, do-anything runtime using OSGi technologies: a case s...
Building a right sized, do-anything runtime using OSGi technologies: a case s...
 
Building Multi-Channel Data-Aware Applications
Building Multi-Channel Data-Aware ApplicationsBuilding Multi-Channel Data-Aware Applications
Building Multi-Channel Data-Aware Applications
 
Adobe AIR - Mobile Performance – Tips & Tricks
Adobe AIR - Mobile Performance – Tips & TricksAdobe AIR - Mobile Performance – Tips & Tricks
Adobe AIR - Mobile Performance – Tips & Tricks
 

Plus de Michael Chaize

Adobe gaming flash gamm michael
Adobe gaming flash gamm michaelAdobe gaming flash gamm michael
Adobe gaming flash gamm michael
Michael Chaize
 
Max2013 rejected apps presentation
Max2013   rejected apps presentationMax2013   rejected apps presentation
Max2013 rejected apps presentation
Michael Chaize
 
Pocket agile challenge adobe mobile v1.0.pptx
Pocket agile   challenge adobe mobile v1.0.pptxPocket agile   challenge adobe mobile v1.0.pptx
Pocket agile challenge adobe mobile v1.0.pptx
Michael Chaize
 

Plus de Michael Chaize (12)

Typography on the Web - FITC Amsterdam 2015
Typography on the Web - FITC Amsterdam 2015Typography on the Web - FITC Amsterdam 2015
Typography on the Web - FITC Amsterdam 2015
 
FITC Amsterdam 2015 - keynote-adobe - We are mutants
FITC Amsterdam 2015 -  keynote-adobe - We are mutantsFITC Amsterdam 2015 -  keynote-adobe - We are mutants
FITC Amsterdam 2015 - keynote-adobe - We are mutants
 
Multimania - Web Design Trends
Multimania - Web Design TrendsMultimania - Web Design Trends
Multimania - Web Design Trends
 
Feweb - Adobe et le Web Design
Feweb - Adobe et le Web DesignFeweb - Adobe et le Web Design
Feweb - Adobe et le Web Design
 
FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014
FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014
FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014
 
Adobe gaming flash gamm michael
Adobe gaming flash gamm michaelAdobe gaming flash gamm michael
Adobe gaming flash gamm michael
 
Max2013 rejected apps presentation
Max2013   rejected apps presentationMax2013   rejected apps presentation
Max2013 rejected apps presentation
 
One backend multiple Screens
One backend multiple ScreensOne backend multiple Screens
One backend multiple Screens
 
Pocket agile challenge adobe mobile v1.0.pptx
Pocket agile   challenge adobe mobile v1.0.pptxPocket agile   challenge adobe mobile v1.0.pptx
Pocket agile challenge adobe mobile v1.0.pptx
 
Jax 2011 keynote
Jax 2011 keynoteJax 2011 keynote
Jax 2011 keynote
 
Devoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with FlexDevoxx 2010: Develop mobile applications with Flex
Devoxx 2010: Develop mobile applications with Flex
 
Flex et PHP pour développer des applications mobiles
Flex et PHP pour développer des applications mobilesFlex et PHP pour développer des applications mobiles
Flex et PHP pour développer des applications mobiles
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Ria2010 workshop dev mobile

  • 1. Nouveautés Flex, Flash Builder et AIR Michaël Chaize | Adobe Platform Evangelist ©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 2. Michaël Chaize @mchaize RIAgora.com ©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 2
  • 3. Les limites de Google translate ©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 3
  • 4. Menu du jour Flash Builder “Burrito” Flex “Hero” Adobe AIR ©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 4
  • 5. Flash Builder “Burrito” © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 6. Productivity features for AS3 Gener ate ev e ent h a m plat s ndler d e te e t hod Co m Renam e m ent e varia I mpl ble / fi le ide/ O verr Metad s / file ata cod e a cl as e com pletio en erat n G Quick Assists © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 7. Flex “Hero” © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 8. Flex “Hero” > les objectifs Application performantes sur smartphones Continuer de faire évoluer les composants Spark Améliorer le framework pour les applications d’envergure © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 9. <s:DataGrid> <s:DataGrid> § Basic skinning contract § Selection, hover, row/column separator, caret and row background graphics are skinnable § Support for native and custom item renderers § Single, multiple, cell & row-based selection § Supports dynamic data provider § Horizontal and vertical scrolling, integration with layout § User interaction via the mouse and keyboard © 2010 Adobe Systems Incorporated. All Rights Reserved. 9
  • 10. Anatomie de la Datagrid Caret Indicator Selection Indicator Hover Indicator Row Separator Column Separator Item Renderer © 2010 Adobe Systems Incorporated. All Rights Reserved. 10
  • 11. Anatomie de la Datagrid Sort Indicator Column Header Group Header Renderer Column Separator © 2010 Adobe Systems Incorporated. All Rights Reserved. 11
  • 12. <s:Form> § Spark Form § Advanced custom layout to support dynamic form columns that can appear “on the fly” (help content, required content indicators) § Horizontal and stacked layout support § Sequenced form items § Baseline alignment for form item content § Declarative skinning for normal, error, disabled and required states © 2010 Adobe Systems Incorporated. All Rights Reserved. 12
  • 13. <s:Image> § Spark Image § Skinning contract allows for custom image presentation § Provide an extensible caching and queueing mechanism for loading content § Enhancements to the BitmapImage primitive § Load remote or untrusted sources § Support high-quality scaling ContentCache § maxCacheEntries § enableQueuing § enableCaching § maxActiveRequests © 2010 Adobe Systems Incorporated. All Rights Reserved. 13
  • 14. Meilleure gestion des RSLs Hero RSL Enhancements § Compiler will smartly remove unnecessary RSLs (-remove-unused-rsls=true) § Compiler will recognize when RSLs have been loaded by the parent application reloading by child apps § Framework refactoring into more RSLs (improves SWF size and DayTrader.mxml startup time) AccountingModule.mx § Allow usage of RSLs when modifying core framework classes (ie: ml monkey-patching). framework.swc osmf.swc spark.swc sparkskins.swc © 2010 Adobe Systems Incorporated. All Rights Reserved. 14
  • 15. Advanced Capabilities Spark Module & ModuleLoader Module extends SkinnableContainer <s:Module> <mx:TabNavigator width="500" height="300"> <s:ModuleLoader label="Tab One" url="SparkModule1.swf"/> <s:ModuleLoader label="Tab Two" url="SparkModule2.swf"/> </mx:TabNavigator> © 2010 Adobe Systems Incorporated. All Rights Reserved. 15
  • 16. Advanced Capabilities Size Report <?xml version="1.0" encoding="UTF-8"?> <report> <swf size="74624" compressedSize="38485"> <headerData totalSize="533"> <data type="metaData" size="465"/> <data type="productInfo" size="28"/> </headerData> <frames totalSize="74091"> <frame name="_RTest_mx_managers_SystemManager" size="56409" frame="1"/> <frame name="RTest" size="17682" frame="2"/> </frames> © 2010 Adobe Systems Incorporated. All Rights Reserved. 16
  • 18. AIR extends the benefits of Flash Player ‣ Richer and more engaging user experiences out of the browser Geo-Location SQLite Application Update Framework ‣ Empower Flash developers Application Lifecycle to deploy applications in .AIR File format for multi-screen applications Enhanced Application Security model app catalogs Marketplace Distribution Mobile Hardware Softkey Support ‣ Leverage desktop AIR app File-System Access (if allowed) MediaLibrary API ecosystem Native Extensibility ‣ Shared codebase and porting with Flash Player ActionScript3 Support Memory, battery & CPU optimizations Audio/Video hardware decoding Optimized SWF management Multi-touch and Gestures Hardware Acceleration Mobile Text input © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 19. AIR for BlackBerry PlayBook WIN A PLAYBOOK !!! http://us.blackberry.com/developers/tablet/devresources.jsp © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 20. Mobile Applications in "Hero" s:Application s:MobileApplication s:TabbedMobileApplication © 2010 Adobe Systems Incorporated. All Rights Reserved. 20
  • 21. MobileApplication and TabbedMobileApplication § View stack metaphor § View § ViewNavigator / TabbedViewNavigator § Built-in mobile navigation experience § Action bar § Back button § Transitions § APIs © 2010 Adobe Systems Incorporated. All Rights Reserved. 21 1
  • 22. ViewNavigator API § navigator.pushView(); § navigator.popView(); § navigator.popToFirstView() § navigator.activeView; © 2010 Adobe Systems Incorporated. All Rights Reserved. 22 2
  • 23. ActionBar navigationContent titleContent actionContent <s:View xmlns:fx=http://ns.adobe.com/mxml/2009 … title=”Expenses"> <s:navigationContent> <s:Button icon="@Embed('assets/home.png')"/> </s:navigationContent> <s:actionContent> <s:Button label=”+"/> </s:actionContent> </s:View> © 2010 Adobe Systems Incorporated. All Rights Reserved. 23 3
  • 24. Components that have Mobile Skins § Button § CheckBox § DataGroup § Group/HGroup/VGroup/TileGroup § Image/BitmapImage § Label List § RadioButton/RadioButtonGroup § Scroller § TextArea § TextInput © 2010 Adobe Systems Incorporated. All Rights Reserved. 24
  • 25. View Lifecycle View Destroyed View becomes User navigates active back to view Another view becomes active View Created View Recreated data § Alternative option: destructionPolicy=“none” © 2010 Adobe Systems Incorporated. All Rights Reserved. 25 3B
  • 26. Mobile ItemRenderers § MobileItemRenderer § MobileIconItemRenderer <s:MobileIconItemRenderer labelField="lastName" messageField="title" iconField="picture" decoratorClass=”phoneIcon"> © 2010 Adobe Systems Incorporated. All Rights Reserved. 26 4
  • 27. APIs pour le mobile © 2010 Adobe Systems Incorporated. All Rights Reserved. 27
  • 28. GEO APIs § Android Permission Required: <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses- permission android:name="android.permission.ACCESS_FINE_LOCATION" /> § Geolocation.isSupported § g.addEventListener(GeolocationEvent.UPDATE, callbackFunction); § GeolocationEvent: § altitude § heading § horizontalAccuracy § latitude § longitude § speed § timestamp § verticalAccuracy © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 29. Accelerometer APIs § Accelerometer.isSupported § a.addEventListener(AccelerometerEvent.UPDATE, callbackFunction); § AccelerometerEvent: § accelerationX § accelerationY § accelerationZ § timestamp © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 30. Multi-Touch APIs § Android manifest change: <uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch"/> § Gesture OR Multitouch --- Multitouch.inputMode § MultitouchInputMode.GESTURE § MultitouchInputMode.TOUCH_POINT § TransformGestureEvent § TouchEvent § GESTURE_PAN § TOUCH_BEGIN § GESTURE_ROTATE § TOUCH_END § GESTURE_SWIPE § TOUCH_MOVE § GESTURE_ZOOM § TOUCH_OUT § GestureEvent.GESTURE_TWO_FINGER_TAP § TOUCH_OVER § PressAndTapGestureEvent.GESTURE_PRESS_AND_TAP § TOUCH_ROLL_OUT § TOUCH_ROLL_OVER § TOUCH_TAP © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 31. Remote Data § Android Permission Required: <uses-permission android:name="android.permission.INTERNET"/> § Standard Flex Networking Libraries: § HTTPService § WebService § RemoteObject © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 32. Full Screen & Orientation § stage.displayState = StageDisplayState.NORMAL § stage.displayState = StageDisplayState.FULL_SCREEN § stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE § StageOrientationEvent: stage.addEventListener(StageOrientationEvent.ORIENTATION_CHANGE, callbackFunction); § foo-app.xml: <initialWindow> <autoOrients>true</autoOrients> © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 33. Camera Access § Camera - Raw camera feed <uses-permission android:name="android.permission.CAMERA" /> <uses-feature android:name="android.hardware.camera" android:required="true"/> <uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/> <uses-feature android:name="android.hardware.camera.flash" android:required="false"/> § CameraUI - Native Camera App var cameraUI:CameraUI = new CameraUI(); cameraUI.launch(MediaType.IMAGE); § CameraRoll - Choose photos from the device's camera roll var cameraRoll:CameraRoll = new CameraRoll(); cameraRoll.browseForImage(); cameraRoll.addBitmapData(bd); © 2010 Adobe Systems Incorporated. All Rights Reserved. 33
  • 34. Native App Integration § Open Email, Browser, Maps, Phone, or SMS § navigateToURL(new URLRequest('mailto:foo@bar.com')); § navigateToURL(new URLRequest('http://www.jamesward.com')); § navigateToURL(new URLRequest('http://maps.google.com/')); § navigateToURL(new URLRequest('tel:1234567890')); § navigateToURL(new URLRequest('sms:1234567890')); © 2010 Adobe Systems Incorporated. All Rights Reserved. 34
  • 35. Local DB APIs § SQLite - Nothing different than AIR for the Desktop § SQLConnection § Sync and/or Async connections § SQLStatement § Prepared Statements: var stmt:SQLStatement = new SQLStatement(); stmt.sqlConnection = FlexGlobals.topLevelApplication['sqlConnection']; stmt.text = "INSERT into giberish values(:giberish)"; stmt.parameters[":giberish"] = g.text; stmt.execute(); © 2010 Adobe Systems Incorporated. All Rights Reserved.
  • 36. StageWebView § Requires Android INTERNET permission: <uses-permission android:name="android.permission.INTERNET" /> § WebStageView.isSupported var swv:StageWebView = new StageWebView(); swv.viewPort = new Rectangle(0, stage.height - height, width, height); swv.stage = stage; swv.loadURL("http://www.jamesward.com"); © 2010 Adobe Systems Incorporated. All Rights Reserved. 36
  • 37. Deployment § ADT is the AIR packager (apk target only available in AIR 2.5): adt -package -target apk -storetype pkcs12 -keystore a.p12 a.apk a-app.xml a.swf § ADB is the Android SDK deployer adb install -r a.apk © 2010 Adobe Systems Incorporated. All Rights Reserved. 37
  • 38. Debugging § adb logcat § trace() and errors - only with apk-debug target © 2010 Adobe Systems Incorporated. All Rights Reserved. 38
  • 39. Deploying to the Android Market © 2010 Adobe Systems Incorporated. All Rights Reserved. 39
  • 40. LET’S CODE A FLEX MOBILE APP © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
  • 41. labs.adobe.com Download Flash Builder “Burrito” and Flex “Hero” Get the source code of Tour de Mobile Flex Check the Flex “Hero” tutorials on developer.adobe.com Free Flex 4 trainings in Belgium and seminars http://bit.ly/ria_update
  • 42. Si vous souhaitez me contacter @mchaize RIAgora.com ©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. 42