Just another Flash iPod/iPad thread

Out of context: Reply #12

  • Started
  • Last post
  • 13 Responses
  • Boz0

    I've built a full blown app with UI like on iphone and sliding and scrolling and all that stuff..

    Here's my objective take on it:

    1. It's not meant for any visually intensive tasks. On iPhone 3G it's almost unusuable even if you use hardware acceleration for sprites and so on.

    2. Video playing inside your app is again unusable because a) it has to be onVP6 or Sorenson encoded if you want to play it in your iPhone app and b) if you load h.264 encoded videos you have to play them with iPhone's native player which is far from effective. It will end your app, go into player and once it's finished playing you will have to load the app again manually.

    3. Many iOS APIs are missing.. so if you thought you want to use camera to record or similar you are out of luck. Also, there was no HTML Loader class.. the new build for AIR for Android now has StageWebView class that allows you to load in html content (ie. for oAuth authorization for Facebook, Twitter etc) but not in IOS version (actually there is but it's a bit buggy right now).

    4. You can save, load and all that stuff from iPHone but there is no Contact List API access for example. These are all things that are advancing rapidly on Android version but not available on iPhone. There is also no way to utilize push notifications.

    5. You can do games and stuff and it will work fine but again, the problem is because 3G is just a shit of a phone now it's useless. If Apple has problems running iOS 4.x on it than you can imagine how difficult it is to optimize shit on it (even if you do stuff in Obj-C).

    6. There is no support for iPhone 4 (retina display). It will run them at 320x480. You can do iPad stuff but you have to pick their template option.

    AIR for iOS is waaaay behind now.. It's far from optimal or efficient. It will take a few releases to make it run well.

    I will say though, my app ran nicely on 3G, but I had to shit bricks to make it happen due to limitations and so on, and yes, if you are building a more advanced applicaiton it's much better to build it natively.

    There's only one thing, as AIR for iOS parts get more optimized the huge advantage is that you will be able to push the same app on all devices witihout a lot of hassle.

    Having AIR/Flash on these devices is very positive because it will teach people to write more efficient code. I know that when I build stuff now i always write it a lot more efficiently because I always keep in mind that I'm publishing to mobile/very low performance devices first and then I'm doing the shabang thing for the desktop version. So you will eventually segment your code into visual presentation and data layer that will allow you to just adjust the visual aspects for performance and platform but the rest of the code will be the same.

    Also, an advantage is that you will be using same code for using native APIs on both Android and iOS. So if you say navigateToURL(new URLRequest("video.mp4")) it will open a native player and allow you to communicate with it.

    Adobe is building the hooks where you will be able to communicate directly to all native APIs, so this will solve push notifications and other issues that are a challenge now.

    At the end of the day, it's still better to build apps in native languages, but one thing that trumps all of that is the ability to make once and create in Flash and port your existing code you developed over the course of years into mobile Flash apps. This is huge.

View thread