2012
11.02

For those who don’t know about Appcelerator, it’s a framework designed to make mobile app development a hell of a lot easier by using Javascript to compile into native iOS/Android apps. It’s free (minus the cloud integration for push notifications, store files, etc.) and incredibly useful for us web developers who need to create an app to go on the Apple App Store or Google Play Store.

Titanium Logo

Titanium Logo

I used to be a Flash developer who could code AS3 apps for web and export to mobile devices. I was never really on the “lets all hate Flash now” bandwagon, but I knew it was inefficient in a number of ways. It never really felt clean or fluid that I couldn’t tell it was made in Flash. With Titanium (the Appcelerator framework), I can still “feel” it a little bit (take that as you want), but to the average end-user it looks and feels like a native app.

Recently I was tasked to make an app with Camera, Image Uploading, JSON reading, and have it go through a TON of .NET web services (that all outputted JSON) and Titanium handled it all beautifully. The documentation provided on their site is a solid 8/10 (they only lose 2 points for not giving enough examples for a few things) and if you know Javascript, then you’ll feel right at home with Titanium.

Creating Windows and Views is as easy as going “var thisWin = Ti.UI.createWindow();” or “var thisView = Ti.UI.createView();”. Labels and text work just like Flash by going “var thisLabel = Ti.UI.createLabel({text:’foobar’});”. And adding elements to your windows is again similar to Flash by going thisWin.add(thisLabel). The point I’m trying to make is if you knew Flash like me, and you know Javascript, then Titanium feels like a walk in the park.

It works on Everything!

It works on Everything!

One thing I’ll say is I’m not a huge fan of the Titanium Studio IDE they provide. I realize it’s based of Aptana Studio, but there are a few bugs within it still (code colouring doesn’t work half-way down a file, autocomplete not working sometimes, etc.) but for the most part it works great. You can compile/build your app right within the IDE and it usually goes off without a hitch. On iOS it opens up iTunes and you can sync to your device (provided you have an Apple Developer account with your device provisioned). Something that I found was if you open Xcode with your device plugged in and go the organizer and then your device console, you can see your console.log() events appear as you do stuff in your app on your device. It’s REALLY handy to debug a few device specific problems (camera, geolocation, etc)

So would I recommend Appcelerator/Titanium to someone who’s looking to build an app? Appsolutely (harr harrr harr). As someone who knows AS3 and Javascript and worked/works with both consistently, Titanium was a walk in the park to learn and use. I’ve already included a script here before showing how to create a custom annotation for use on the map component, and I hope to include more snippets/tutorials with Titanium in the future.

1 comment so far

Add Your Comment
  1. […] Zwakk talks about his first impression of Appcelerator and the Titanium SDK on his […]