A Week (Well Spent) With Eclipse and Android
As a follow-up to A Week (Wasted) With Titanium Studio I thought it only right that I report on my week spent doing pure Android development using Eclipse and ADT.
It's similar to the version made with Titanium - minus the tabs and plus a few other bits. Looks aside, the two end results are very similar. So what sets them apart? Well, in a word, performance. Oh, and reliability.
Here are both apps listed on my phone:
No prize for guessing which one was built using Titanium! For apps being downloaded over a mobile network it's a no-brainer that file size needs to be kept to a minimum.
The Titanium app would only start about 4 out of 5 times. The other time it would stall at the splash screen. There were other reports of this in the forums, but no known solution.
When it did start performance was lacking to say the least. Tabs with table-based data elements on would cause a noticeable lag when opening. More rows = more waiting. Not what I'd expect and was noticeable with really small datasets (like <10 rows!).
In contrast the native Android app I made has never failed to launch. It launches way faster and when it's running it's much, much quicker. There's never any lag between operations.
There's little comparison between the two really.
As For Development
To create both versions of the app involved using an Eclipse-based IDE. This should make it a comparable experience, but it isn't. Developing with Titanium Studio was not a pleasurable experience. Is trying to write real OO code with JavaScript ever!?
Using Eclipse with ADT installed is much more akin to how I'd expect a programming IDE to be. It's much, much nicer to use, has much better code-completion and the compile/build time is much quicker! Almost a pleasure to use.
Don't even get me started on the lack of debugging in Titanium. If you want luxuries like debugging then you have to pay!? I'm not against paying for dev tools/software. But the product has to be really good and well-document though (which Titanium ain't) and free of bugs (hey, no support for decimal number-only fields!!), which it ain't.
In Summary
If you want to make an iOS app but don't fancy the daunting task of learning to use XCode or learn to code in Objective C then Titanium might be for you. In all other cases it probably isn't and I'd advise avoiding it until it's way more mature than it currently is.
Have you thought about making the same app using HTML5?
Reply
I hadn't, but I might, now you mention it, just as an exercise in comparison. And because I feel a bit left behind by this whole HTML5 movement.
Reply
hi Jake... any plan to compare it with the latest flex for mobile? it looks promising to me... write once for multiple resolution and deploy to android, ios, and blackberry.
http://www.adobe.com/devnet/flex/articles/mobile-development-flex-flashbuilder.html
Reply
Possibly. I've played with Flex mobile and it's impressive and is probably the only decent option if you want to write-once and run on any device (apart from HTML 5 of course).
For my pet project I didn't want to use Flex (even though I've been a massive fan of it and advocate of all things Flex for years now). Don't ask me why, it just doesn't feel right. Feels a bit like cheating.
Reply
Show the rest of this thread
Did you look at phonegap at all? I haven't but wondered if you had yet.
Reply
Not yet, but I might. Probably as part of looking in to using jsut HTML5.
Reply
Hi Jake,
I've tried some simple android app using Eclipse. I would also be looking into Dojo Mobile. What's your take on that?
Reply
Hi William,
Not had any exposure to Dojo Mobile, so I can't comment. Sorry.
Reply