Tuesday, February 21, 2012

Simple AIR applications on iOS and Android comparison



The last years and especially 2011 were the years of mobile devices. We've seen dual core phones, devices playing legacy windows games(like GTA), companies investing millions for custom mobile applications and so on. The tricky part is when it comes to choice. Which platform should I target for my company's application? It would be nice to have a way to create an application for all kind of devices with almost the same cost as creating one! What a dream for you marketing guys. Guess what. Adobe already found a solution on that letting you create an application on Android, iOS(both iPad and iPhone) and Blackberry, with almost the same piece of development! So your apps will share the same experience, assets no matter what the phone or tablet of your client is! And when it comes to updates you still win! Sounds perfect. And it could be but it is not for now. But we think it will be sooner or later. Let's find out why.

Lately I’ve been wondering why the AIR applications suck so hard in iOS devices. Well the truth is that it is not so bad, but when it comes to video and loading big amounts of assets… yeah this is not called experience. So it seems that Apple has so much right! Mobile devices cannot play flash or AIR! Or this is not the case? Wait….
Let’s think again. Do not get manipulated! There’s a whole world out of Apple. Yes dude you still exist out of Apple devices so let’s rethink globally and make a clue. Because when you know why your device is better you are happier! There is blackberry, Windows Phone and Android in the market with the last two sharing a great part of it especially out of US and the first having a great legacy.  After all our mighty Apple maybe has done something wrong. So we should test and see. So far so good?

The test
Recently I’ve been experimenting on an AIR app loading video files and playing them into an embedded video player. Also this app contains a lot of views changing back and forth. In my tests  I tried to encode videos with the best way fitting each platform. If anyone believes he has the best encoding profile for iOS devices plz send me and I will promise to retest it! I finished development using  both phones and their emulations inside the Flash Builder 4.6. I got equipped with a Samsung Galaxy S II and an iPhone 4? Do you think this is fair? Well check the prices. I would include the new iPhone 4s but could not afford it for now. So if anyone wants to make me a gift be my guest( :P ). And after all, when I am paying for a top class device, I need a top class device! Nothing less and please something more. Because when we come to payment we need the best for the money we gave.

Results
In the Galaxy S II installed and ran smoothly without any issues. All videos played normally and views browsing was piece of cake for the Android giant. After all wtf! I gave  more than $500 I expect at least to play videos and view the info an app serves to me.
Iphone 4 was very very slow at the beginning, so I tried to redevelop some parts of my code. I had to research for best techniques and reencode all the videos. I did all I could. I removed some parts which were a plus to user experience like transitions and stuff. I removed almost all my favorite parts. I managed to make it as much presentable and acceptable I could. But I was still not satisfied from the experience I was receiving.

The question
Do you believe the iPhone 4 is not that strong to play simple apps? Of course not! Who could say that? And if someone did would be crazy or at least idiot. The iPhone 4 is a great device providing such a great experience. People love it! App stores are full of people for all the series of their products. After all Apple has grown so much the last years that bypassed “Big Apple” (due to NY naming :P) and became “The Huge Apple”.  And you know something? Apple knows what it’s doing!
And yes, of course it does. I am not in the mood to compare the Android vs iOS devices. This is going to be another post.  They are both good software vendors. With Apple being a lot in front as creates software to be used in its own hardware. They know their devices end to end.

But why Androids run AIR apps so smooth without any issues and iPhones can’t?  Do not forget that Apple did not like flash on iPhones for any reason, neither giving the chance to users to select what they want. For me as a developer on both AS3 and Objective C this seems like sabotage. And why? The reason is simple as described. I cannot get that a fabulous device such as iPhone cannot run an application as smoothly as it runs on a same price Android or even a lowest one!

Be my guest to find any other reason because I feel frustrated and disappointed with Apple trying to manipulate the development procedure! I am sure they wil insist saying that mobile phones cannot play flash or AIR even those get a 16-core cpu and 4k mAh batteries. It is all about marketing! And it is so odius... That's why I am choosing to walk away from iOS and Apple at this time hoping to see big changes in the future.

2 comments: