Review: Appcelerator vs. PhoneGap vs. Adobe Air

by Tony Lukasavage on Tuesday, January 18th, 2011 | spacer 55 Comments | Tags: Adobe Air, appcelerator, Mobile, phonegap

Overview

UPDATE: This was originally posted January 18th, 2011. All 3 platforms have changed immensely since.

UPDATE: If have updated and more detailed information about Appcelerator and PhoneGap at this link: savagelook.com/blog/portfolio/a-deeper-look-at-appcelerator-and-phonegap

I have been charged with deciding on a mobile framework for deploying a single code base to multiple devices (iPhone, iPad, Android, Blackberry). Naturally, I was gravitating towards Adobe Air since most of my personal work these days has been in AS3. I wanted to see what else was out there, though, and was pretty surprised that Adobe Air wasn’t my choice in the end.

In addition to one other commercial platform I did not fully assess (too expensive), I looked at Adobe Air for mobile, Titanium Appcelerator and PhoneGap. All are free to use frameworks for centralized mobile development. The gist is to be able to create apps for multiple devices off the same code base. With iPad & Blackberry support, speed to market, and the ability to use Contacts & Multitouch as my critical points, I began digging.

General Functionality

Titanium Appcelerator PhoneGap Adobe Air for Mobile Notes
Android Support spacer spacer spacer Adobe Air requires Android 2.2+
iPhone/iPad spacer spacer spacer Adobe Air creates iOS apps with the Packager for iPhone
Blackberry Phone spacer spacer spacer Appcelerator support is currently beta.
Blackberry Playbook spacer spacer spacer Appcelerator support is currently beta.
Symbian spacer spacer spacer
Palm spacer spacer spacer
Windows Phone 7 spacer spacer spacer phonegap-wp7 is a 3rd party attempt for PhoneGap.
Native UI support spacer spacer spacer PhoneGap and Adobe Air both require 3rd party libraries. PhoneGap has UIControls for PhoneGap. Adobe Air has as3iPhoneComponents and android-components
Native code support spacer spacer spacer Appcelerator allows module development. PhoneGap uses custom Javascript handlers.
Desktop deployment spacer spacer spacer PhoneGap has 3rd party libraries on Github: phonegap-mac & phonegap-windows
Deploy without Mac? spacer spacer spacer Adobe Air uses the Packager for iPhone/iPad
IDE & Tools Titanium Developer PhoneGap Tools Flash Builder, FDT, FlashDevelop Appcelerator has no current IDE, but recently acquired Aptana
Interpreting Javascript mapped to native code Rendered in web view control Adobe Air runtime
Community Resources Developer Center Docs, Wiki, IRC, and Mailing List Mobile and Devices Development Center
Languages used JS HTML, JS, CSS Actionscript3 Appcelerator also uses PHP, Ruby, and Python for desktop app development
Support $2,189 per year per developer ranges from $1,000 – $25,000 per year Adobe Support Adobe offers no professional mobile support for apps, just their products.

Device APIs

Beyond the overall support structure of the frameworks I wanted to get into the specific device API functionality. This was a little harder to track down, but the list here should be accurate as of the writing of this post. As I said earlier, contacts and multitouch were the only criticals, but I wanted to know what else these frameworks offered. I’m assuming anyone reading this far would find this information valuable as well.

Titanium Appcelerator PhoneGap Adobe Air for Mobile Notes
Accelerometer spacer spacer spacer
Geolocation spacer spacer spacer
Vibration spacer spacer spacer
Camera spacer spacer spacer Not yet supported Adobe Air for iPhone/iPad
Contacts spacer spacer spacer
Multitouch spacer spacer spacer
SQLite spacer spacer spacer
File System IO spacer spacer spacer
SMS spacer spacer spacer All support SMS via the “sms:” URL prefix.
Phone API spacer spacer spacer
Copy/Paste spacer spacer spacer
Sounds spacer spacer spacer PhoneGap cannot record sounds. Adobe Air cannot record sound for iPhone/iPad
Bluetooth spacer spacer spacer
Video Capture spacer spacer spacer Adobe Air cannot record video for iPhone/iPad.

Summary

That’s what I’ve got so far. Let me know if and when some of these assessments change. I’m also eager to hear other people’s thoughts. Feel free to chime in.

The long and short of my recommendations:

  • Go Adobe Air if performance isn’t critical and you have AS3 experience. The tools and workflow for using pure AS3 or Flex Hero make turning out mobile apps very smooth. Watch out for performance, particularly on iOS.
  • Go PhoneGap if you needed the widest range of support for devices. If you need it to run everywhere, this is your framework. Beware of the less than stellar documentation and wiki, though.
  • Go Appcelerator everything else. The native UI and ability to access native code is a big win. Also, the community, IDE, and documentation are top notch. Appcelerator was my choice in the end, but that doesn’t mean its right for you.

55 Responses to “Review: Appcelerator vs. PhoneGap vs. Adobe Air”

« Older Comments
  1. spacer Santosh Bhandarkar says:
    September 1, 2011 at 11:45 pm

    I wish Titanium also had a UI Builder – with drag-n-drop support. Would be a killer addition to the platform which is pretty good otherwise.

  2. spacer Darryl says:
    September 21, 2011 at 12:43 pm

    Fantastitc article! The best one I have seen on the subject. I do want to share my two cents.

    1. Adobe Air 2.6 does have full camera, microphone, and retina display support now (see www.adobe.com/devnet/air/articles/ios_features_in_air26.html ) Plus, there are free native-like UI android and iPhone widgets for Air.

    2. Titanium does look promising, but after reading all the horror stories about memory leaks and bad tutorials I rather stick to adobe Air. Besides, Flash CS5.5 is a fantastic development environment.

    Disclosure: I develop in Air, Flash, iOS SDK, Android SDK, Winforms and ASP.NET (with C#). My Appcelerator experience is limited to a couple of days plus google research. I have no connection to Adobe other than the fact that Flash/Air/AS3 are a part of my skill set.

    I hope this helps.

  3. spacer Flemming Gravesen says:
    October 12, 2011 at 1:43 am

    Hey.
    Does it still apply that Bluetooth API is not supported in PhoneGab…
    Some plugins are available here:
    https://github.com/purplecabbage/phonegap-plugins/tree/master/Android

    Nice page btw.

  4. spacer Neno says:
    October 24, 2011 at 4:08 am

    Re supported features, PhoneGap supports audio recording and playback as well as video capture. I’ve only tested this on an Android 2.2 device but see the docs here docs.phonegap.com/en/1.1.0/phonegap_media_capture_capture.md.html#Capture and here docs.phonegap.com/en/1.1.0/phonegap_media_media.md.html#Media.

  5. spacer Neo says:
    December 5, 2011 at 8:35 pm

    Nice review, but it need to be updated from time to time…..

« Older Comments

Leave a Reply

Click here to cancel reply.

gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.