
The Android AppInventor
- Pranshu Patel & Vignesh Aigal
Google has taken another market by storm and this time, the target was the smartphone!
Android not only shook the Symbian from its deep slumber ofchangelessness but also bought with it a new era of smartphone OS.Withmore than thousand apps freely available in the Android market, Androidhas been a major reason for Nokia’s downfall in the smartphone area.
Android also boasts of easy productivity in the sense that you as a user candesign your own app and share it with whomsoever you like by putting it upon the Market.
The Android AppInventor is a simple development environment for creating mobile apps for Android handsets. But make no mistake — even though you can use the App Inventor environment to create apps for your handset, it’s still an early work-in-progress with limitations as evidenced by its beta tag.
However, the limitations don’t make using App Inventor any less enjoyable, though. After a run through the various tutorials, that guide you to create some basic apps, there’s a feeling of accomplishment when getting the app working properly on a phone. And by using the tutorials, you can learn concepts that will be the building blocks of your own apps. For example, the first hands-on lesson teaches how to add an image to an app and then have the phone do something when the image is tapped. Now that you know how to use that specific event, you can build an app with different interactions. And that’s really what App Inventor is all about — learning about mobile software programming concepts in a fun environment.
So how does App Inventor foster such learning? In typical Google fashion, nearly the entire tool set is an online experience. Your phone display palette is on a web page as are all of the controls such as buttons, a clock, images, and any other visual objects an end-user would see in your software. To use a control, you just drag it over to the phone screen within the same webpage and then fill in any attributes as needed. Examples of such attributes could be the color of a button or the text for a label. Think of this page as the visual look of your app.
Adding logic events are done through a secondary window called the Blocks Editor. This Java-based application knows about the visual objects in your app and uses a LEGO-like, puzzle approach to create programming flow. For example, one of the tutorials creates an app that allows you to draw with a fingertip on your Android phone.
A perfect example of using the Blocks Editor is when you want to allow a user to change the color of the digital ink to red by tapping a button. In the Blocks Editor, put the appropriate blocks for such an event inside the “ButtonRed.Click” block, telling the program to change the paint color when a user taps the red button. There are a reasonably large number of events in the Blocks Editor to use — I was able to open the browser on my phone to a specific web page by tapping a button in one of my apps. Google allows access to the GPS, camera and other installed apps from within software created with the App Inventor.
The puzzle-piece approach may look familiar to some because it’s based on Scratch, a programming environment developed by the Lifelong Kindergarten group at the Massachusetts Institute of Technology. Google has leveraged the Open Blocks Java Library project — also export — and added Android specific bits to the compiler, so you can create an actual .apk, or software installation of your app for Android phones. App Inventor also creates aQR code for your app, so in theory, you have all the pieces needed to submit your software to the Android Market.

