Currently Browsing: Flex

Adobe Flex Mobile Overview – Part 1

Adobe Flex Mobile Overview – Part 1

We recently had the pleasure of attending the Adobe MAX 2010 conference in Los Angeles at the LA Convention Center. Adobe showed off some exciting new technologies that are either available to use today or in the coming future. What interested me the most was the latest Adobe AIR 2.5 platform for Windows, Macintosh, Linux, Android, iOS and Blackberry Tablet OS. This allows us to develop applications using the next version of the Flex framework to build mobile and desktop applications using a common code base.

So once we got back to the office after 25 hours of flying, I handed our developers an Adobe MAX 2010 Adobe Flash Platform DVD with all the preview software. We dived straight into mobile development with the latest Flash Builder “Burrito” and Flex SDK “Hero” framework.

The result of our efforts was an iTunes Trailers application on the AIR for Android platform.

iTunes Trailers Home Screen

iTunes Trailers home screen

One thing that we noticed was, if you are already familiar with Flex, then you do not have to learn anything new. There are a few new components implemented to support mobile devices such as MobileApplication, TabbedMobileApplication and ActionBar. Also, you can have something up and running pretty quickly compared to other mobile platforms.

When you first create your project instead of extending Application, it extends MobileApplication. This class does a lot of work for you, including orientation support, persistence manager to save and restore state, listeners for the hardware buttons and the ViewNavigator (see description below).

“The ViewNavigator component is a container that consists of a collection of View objects, where only the top most view is visible and active. Views can be added and removed by using the popView() and pushView() methods on the navigator. When a new view becomes active, the old view’s instance is destroyed. When a view is pushed on top of navigator’s stack, the old view’s data property is automatically persisted and restored when it is reactived through one of the pop methods. ViewNavigator doesn’t provide index information about the Views that it is currently managing and strictly follows a stack navigation model. Jumping between a set of views similar to a ViewStack is not supported by this component. ViewNavigator displays an optional action bar that displays contextual information defined by the active view. When the active view changes, the action bar is automatically updated.”

iTunes Trailers movie info screen

You cannot define any visual components in the MobileApplication class, you will notice that it contains a property called firstView, which is the initial view your application will start with. Each view on the navigation stack must extend View. It extends Group and adds additional properties to communicate with it’s parent navigators’ various UI controls.

MobileApplication provides a way to persist your application’s view state and data when the application quits, so that the next time it starts, it can restore itself with the same current view and view history. This makes interruptions in your application’s life-cycle completely transparent to the user. This is very important on mobile devices, where the operating system can interrupt or kill an application at any time.

The ActionBar class defines a component that includes title, navigation and action content groups. In the context of a ViewNavigator and MobileApplication , the ActionBar is used as application chrome which is has content contributed by the active View. The screen shot above contains a back button in the navigation content group with the default title. The iTunes Trailers app we developed is using the default chrome and colors. Developers can however implement there own skins using ActionScript, FXG or bitmaps (recommended approach by Adobe for optimisation) rather than MXML and runtime MXML graphics. A good place to start would be to look at the ButtonSkin class under the package spark.skins.mobile. This will give you a good idea of how to go about developing your own mobile skins.

iTunes Trailers cast members screen

The List and Scroller components have added functionality to enable touch-and-throw scrolling. To enable touch scrolling, set the new property called interactionMode style to touch. If you are using the mobile theme, then this style is automatically set on all appropriate components for you, so no need to do anything explicitly. You may however, develop a desktop application using AIR for touch screens, which would require you to set the property. The default item renderer for the List component on mobile devices is MobileItemRenderer. This is a simple item renderer with a single text component.

There is a more advanced item renderer optimised for mobile devices called MobileIconItemRenderer, it contains four optional parts:

  1. an icon on the left
  2. single-line label on top next to the icon
  3. multi-line message below label and next to the icon
  4. a decorator on the right

The screen shot below is using all of these parts of the item renderer.

MobileIconItemRenderer

If you would like to create your own advanced item renderer then Adobe recommends that you create a new ActionScript item renderer that extends MobileIconItemRenderer. Most of the time you probably won’t need to create your own item renderers but on rare occasions you may need to extend the functionality.

In part 2 we will go into more detail on how we built the application and integrated the services using Flash Builder “Burrito”,  the design view to layout the views and how to package up the application for distribution on the Android Marketplace. Additionally, we will provide the source code for the application too.

iTunes Trailers Watch Trailer

iTunes Trailers watch trailer screen

For more information on Flex SDK “Hero” framework, check out these links:

ThoughtFaqtory is looking for new talent

We are currently looking for new talent to join our team. Head over to the Careers page to find out more.

The current positions available including the skills required to perform this job effectively:

Flex developers

  • Adobe Flex
  • Rich Internet application development
  • Strong working knowledge of usability focused interfaces
  • Object-oriented programming, analysis and design with ActionScript3
  • Custom Flex component development built on Adobe’s Flex framework.
  • Flex-Database integration using Web Services, Flash Remoting, and/or Data Services.
  • Adobe LiveCycle Data Services ES/ BlazeDS, Flash Communication Server / Media Server
  • Eclipse and Ant
  • Java
  • AJAX development experience a plus.

UI developers

  • Adobe Flex
  • ASP.Net
  • C#
  • MVC Architecture
  • Silverlight
  • JavaScript
  • CSS
  • HTML/HTML5
  • XML
  • AJAX

Java developers

  • Oracle, MySQL
  • JVM (J2EE, JDK, JRE), API, XML
  • Apache Tomcat
  • Spring
  • Redhat, Linux, Solaris
  • Hibernate / JPA / ORM
  • JCR
  • Any web application framework
  • Java2D, PDF, Postscript programming
  • GWT, AJAX development
  • Test-driven development
  • Adobe Flex/AIR Development a plus

iPhone/iPad developers

  • Experience in iPad Development
  • Expertise in Mac OS X, Objective-C 2.0, Xcode, Interface Builder, and Instruments
  • Expertise in device partitioning and code signing
  • Expertise in consuming web services from iOS applications
  • Expertise in SQLite and database work
  • Experience with SCM toolsAbility to design consistent, easy-to-use UI’s
  • Mastery of iOS API’s
  • Self starter, able to work independently
  • Good communication skills
  • Ability to explain development concepts to other developers
  • Experience with Subversion
  • Experience with both SOAP and REST

PruHealth and ThoughtFaqtory deliver healthier interactive lifestyle online

Pruhealth UK

Award-winning health insurance provider uses the Adobe Flash Platform to create a unique interactive online service empowering customers to lead healthier, happier lives.

A new take on healthcare
For many people, the concept of wellness is relegated to an occasional visit to the doctor at the first sign of illness or for an annual check-up. But with climbing insurance premiums — particularly for employees who make contributions to employer-sponsored plans — and frequent coverage from news outlets about the dangers of an unhealthy lifestyle, more citizens are rethinking their approach to healthy living.

Pruhealth Screenshot

“We’ve always viewed ourselves as a leader and innovator in the insurance industry,” says Paulo dos Santos, CIO at PruHealth. “Encouraging and rewarding our customers with discounted premiums and other services for living a healthier lifestyle would certainly distinguish us from our competitors. We needed to create a unique program to deliver that message. Adobe software and technologies proved to be the most logical choice to achieve that goal.”

Working with our business applications development team at ThoughtFaqtory, PruHealth adopted the Adobe Flash Platform, including Adobe Flex Builder, to create an interactive online, incentive-based curriculum that encourages physical activity, healthy eating, and smoking cessation among the many ways for customers to earn redeemable points and valuable rewards. The challenge for us was to build a rich experience, that was easy to use, enjoyable to work through and be able to retain the users interest throughout the completion of the health and fitness goals process.

Pruhealth Screenshot

With the Adobe Flash Platform, PruHealth provides customers with richly detailed and dynamically animated graphs and charts, giving them a comprehensive understanding of how their habits affect their health and wellness.

Leveraging the Adobe Flash Platform and Adobe Flex Builder 3, PruHealth delivered its innovative online Vitality Interactive application, a secure online portal to accompany the long-standing Vitality Program. The dynamic portal features a range of interactive wellness tools that enable customers to create their own health and fitness goals and timelines.

“With the Adobe Flash Platform, we created a richly animated site that brings a unique visual perspective to show customers how their daily habits contribute to their overall health and wellness,” says Greg Peringuey, development manager for PruHealth Online.

The application provides customers with a questionnaire about their current lifestyle choices—exercise habits, calorie intake, and lifestyle choices, among many others. They can watch as rich-media charts and graphs update instantly with their answers to paint a comprehensive picture of lifestyle changes they can make to live healthier, and save money.

The full Adobe Success Story is available here.

Adobe Flash, One Web, Any Screen

Flash brings the web to life: One web, any screen: See Flash on the new Dell 5 tablet, Dell 12 smartbook (Latitude Xt2), Palm Pre, Nexus One, Motorola Droid, and HP mini 311 netbook.

Lets help Adobe

If you follow any of the Adobe guys involved in Flash and AIR on Twitter, you may have come across a few tweets regarding improving Flash 10.1 and AIR 2.0.

It is pretty simple process, just follow these steps:

Also, please spread the word on Twitter – Improve Flash 10.1 & AIR 2.0 via Beta 2 http://bit.ly/cty7Nm READ & RT #Flash #AIR #QUALITY

Page 2 of 41234