Mobile Application Development and Flex
Last month, I attended a RIA conference by Adobe at Pune. If I have to choose the most interesting part, I would go with the demo on use of Flash Builder 4.5 for Mobile application development with Flex 4.5.
Adobe is trying to answer one of the most sought-after questions – is it possible to develop an iPhone application without using Xcode? Is it possible to develop an application for Android that will run on iPhone as well?
Adobe wants to use Flex as a mechanism to answer the above questions. If you know Flex, you can build apps for Android, BlackBerry Playbook, iPhone and iPad.
Key features of this approach in creating applications for multiple mobile platforms are:
- In-built component library for UI
- List, Busy Cursor, Scroller, ItemRenderer, different buttons and navigators etc.
- Auto scaling based on device pixel density
- Support for mobile themes including default
- Performance optimization
- Multi-resolution bitmap support
Here is a nice step-by-step overview on how to develop a mobile application using Flex 4.5 SDK. I must agree that this is really a huge step forward to enable developers concentrate on business needs rather than different platforms when it comes to mobile development. If we look at the rich feature list and support mentioned, there is no doubt about bringing down the cost of developing and improving the time to market for developers.
So, is Flex something that everyone should consider when building a multi-platform mobile app? I think the following questions and considerations will help one decide.
- Do you have an existing app developed for either iPhone or Android.
If you plan to extend support for additional platform, it would be 50-50 decision as development efforts involved will be same. Using Flex 4.5 could really make a difference if in the future, you plan to add more features to an existing app.
- Which mobile platforms are you planning your app for?
If your focus is mainly on platforms supported by Adobe, it’s worth evaluating.
- Complexity of the app and features to be supported.
I am yet to evaluate complete feature list, but overall it looks promising for simple data driven apps. It will take a while to evaluate and comment on its ability to support complex business requirements without compromising performance.
- Is there any platform specific feature in your application?
One of the challenges with respect to developing cross platform app is always the diverse set of platform specific feature list. For example, on Android, almost every device has back button to exit app whereas Apple apps are largely unaware of existence of back button or app exit functionality. Although you have a common code-base with Flex, it is purely based on similarities across multiple mobile platforms, which makes things difficult.
As mobile platforms are continuously evolving, Adobe’s attempt is commendable. What I am looking forward to now is how Adobe is going to incorporate support for future versions of these mobile platforms – essentially, how fast Adobe can add support for newer versions of operating systems in the future, to position its Flex platform over the individual Android/iPhone/Blackberry platforms.