Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

xCode vs Android SDK vs Adobe Flex

I am going to develop an application which will be cross platform and it will be released for IOS and Android.

My App will be using network connectivity and communicate with the server and it has to be fast, reliable and responsive.

So my Question is: If i choose Adobe Flex to build that app for IOS and Android, So will there be any performance issues?

If no then why people use xcode or android sdk? What are the disadvantages of using Adobe Flex over xCode and Andoid SDK?

like image 834
Kamal Wadhwa Avatar asked Nov 09 '11 18:11

Kamal Wadhwa


2 Answers

Generally speaking, if you use a cross-platform "write it once and build for many platforms" tool you likely will give up the ability to take advantage of some (or all?) device- or platform-specific features. You are, in effect, choosing a lowest common denominator sort of solution. That is to say, you have available to you only the platform features available on ALL the platforms you are targeting.

Building a native app -- that is, using Xcode to build an iOS app and using the Android SDK to build an Android app -- gives you complete access to all of a given platform's specific features and capabilities, thereby ensuring the best user experience on each platform.

This is now my opinion: Native apps are better, simply because they present the user with a native experience -- an experience that will feel familiar to them as a user of the platform. When you choose to use a cross-platform tool you are actively choosing to give your user a less-than-ideal experience on their device, but YOU saved some time (maybe) getting your app to market. Who's the winner?

In my job, my boss and I had a specific conversation about this. We have native iOS and Android apps, on purpose, because we didn't want to give up platform-specific features. We wanted each app to give the best experience it could on its platform. We specifically agreed that a cross-platform solution was not the way we wanted to go.

like image 114
Mark Granoff Avatar answered Sep 24 '22 19:09

Mark Granoff


Depending on what you are building, Air is a great platform for developing cross-platform mobile applications. Despite recent news that the Flash player is no longer being developed for mobile browsers, the native story remains strong. Plus, having seen native IOS, native Android and Flex development, the Flex platform is much better when it comes to the ease of development. With high-level features like data binding, visual state management, a solid component/skinning model, transitioning model, etc, it is a generation or two ahead of iOS and Android (IMO).

If you are using Flex for mobile (iOS/Android/Playbook), you get a common look/feel across all mobile devices. @MarkGranoff suggested that the user experience is downgraded when using an approach, but I'd challenge that.

Although I agree that an out-of-the-box styling of the UI components in Air feels a tad off, I don't recommend that anyone build apps that way anyways. Instead, create an app that looks like your app. There have been many applications that don't conform to the native look/feel of iOS or Android but are still quality from an aesthetic and UX perspective.

There is something to be said for an app that looks/behaves the same across all platforms. I can tell you this much... the user doesn't really care. If it looks good, feels good and does what they want, they are happy.

The Flex Mobile SDK uses a lot of the same UI paradigms (especially in the soon-to-be-released version of the SDK) and it is getting better. I wouldn't discredit it. You can save a lot of money and time using something like Flex Mobile.

like image 24
Brian Genisio Avatar answered Sep 23 '22 19:09

Brian Genisio