onrails.org home

Journey into Android Development - Part 1: the gTablet

I dabbled a while back with the Android SDK 1.5 but didn’t pursue that platform back then. With the advent of Amazon’s App Store, a bunch of cool tablets and Honeycomb, I thought it was time to take a Journey into Android land again. 

Over the next couple of weeks I will report my findings on this blog. I didn’t just want to explore the Android ecosystem from the emulator I wanted a real device. But I also didn’t want to spend $800 or signup for  a two year contract, so I went for the cheap gTablet. So here is my first impression.

I must admit that I’m an Apple fan boy. I’ve had numerous MacBook, Macs, iPhones, iPads over the years and I will compare exploring the gTablet to my experience with the iPad (one).

First stop, opening the box and starting the gTablet

The packaging wasn’t that bad, nothing exciting, just a box. But then starting the gTablet didn’t work, the battery must be empty. So I had to plug it in. It’s a small detail, but let’s move on. I plugged it in and behold, it’s starts.  The hardware looks and feels not too bad for the price. The screen get’s smudged with fingers prints pretty fast.

The software

Well it runs Android 2.2 and that will be the target of my first application. However the stock software they provide is real crap.  Even for a cheap table, the browser is just ridiculous and presents Security Warning for every https page, they don’t even have a proper certificate authority. I won’t go on and tear the rest of the applications to pieces, as I was aware from reading many reviews that the stock software isn’t great and I will try to find a good upgrade. I’ll hilight the process in this column. Ok, just one more critic…when I started the tablet my kids where standing next to me and got really excited as they saw the Angry Birds icon on the desktop. But the app doesn’t start…how disappointing. So my recommendation so far, don’t spend a penny on this tablet unless your are ready to update it. It’s not worth the $200 or more dollars like that. 

Now this said before upgrading I want to see how I can create a simple app and move it onto the tablet. Note I won’t describe the development process, the SDK and other tools I will use as I will mainly focus on the eco system, like how to move the app on the device, how to get the app into the Amazon app store, can I get apps from the Amazon AppStore onto the device at all? So I’m a total newbie and will share my experience, the ups and downs, the excitement, the hacking, on these pages. So stay tuned…

USB Connection

Now onto the fun stuff. I connected the usb call and can see the whole disk system right away…Note sure it’s the whole file system but it’s fun that you can add easily stuff on the tablet:

usb connection

Well, it’s fun to see some of the iPhone restrictions not beeing there. I wonder if the applications must be signed. Also I think to install a new system you can just find a different update.zip file and load it during the boot process…I will try that later. For now let’s see if I can copy a new .apk file directly to the device.

Installing the Android SDK on my Mac.

Before I can install an app, I need to build one. A quick google search and onto http://developer.android.com/sdk/android-2.2.html. The page says "If you are new to Android, download the SDK Starter Package first.". Let’s do that… http://dl.google.com/android/android-sdk_r10-mac_x86.zip. After unziping it create the android-sdk-mac_x86 folder which I move to my /Developer folder.

Then onto Installing the SDK

Well, the instructions says to “On Mac or Linux, open a terminal and navigate to the tools/ directory in the Android SDK, then execute: android”, let’s do that. Well I had to execute “sh android” as the script didn’t have the +x flag set. Ok that opens a ui and I select the SDK Platform for Android 2.2, API 8, revision. Later if rooting the gTablet works I will have to get another version, but as the stock software says it’s a 2.2 OS, let try with that SDK, so I just the the “Install Selected” from the UI. The UI shows the following log: 

Downloading Android SDK Platform-tools, revision 3
Installing Android SDK Platform-tools, revision 3
‘adb kill-server’ failed — run manually if necessary.
Installed Android SDK Platform-tools, revision 3
Downloading SDK Platform Android 2.2, API 8, revision 2
Installing SDK Platform Android 2.2, API 8, revision 2
Installed SDK Platform Android 2.2, API 8, revision 2
‘adb kill-server’ succeeded.
ADB: * daemon not running. starting it now on port 5037 *
‘adb start-server’ succeeded.
ADB: * daemon started successfully *

And mentions that “Done, 2 packages installed”. 

Building a first app using Appcelerator’s Titanium

Well, I’ve an app that I wrote for the iPhone, I would like to see if Titanium’s cross platform premise holds. Let see what I need to sweat to get it running on the gTablet…First step let’s add the SDK to Titanium. My app was an “iPad” app to Titanium doesn’t even want to know about the Android SDK. So let’s create a new “Mobile” SDK…Hey, it finds an Android 1.6 SDK…I must have dabbled with that a while back. Finnally found the following on Appcelerator’s support pages "If you’re installing the Android SDK, make sure to install the Platform-tools package, and as usual you will need the Google APIs Add-on". Ok, then let’s try that.

10pm and the kids go swiming early in the morning, so I’ll wrap up this experiment and continue over the next few days. 

… to be continued






Fork me on GitHub