Android Technical Primer
Posted by Matt Cashatt on 4/22/2011 (Last updated on 4/25/2011 7:52 AM)
As of February 2011, the Android mobile platform represents the largest share of the US smartphone market at 33% market share followed closely by Research In Motion (RIM) at 28.9% and then Apple's iOS at 25.9%. And if the size of Android's market share weren't impressive enough to make you take notice, the rate at which the platform has propagated throughout the smartphone space is: since December 2010, the platform has wrested seven percentage points of market share out of the hands of smartphone titans RIM and Apple. So if you are a developer in the mobile space it may be time to seriously consider adding Android development to your repertoire if you haven't already.
There are several great tutorials to be found online for getting started with Android development, but this is not one of them. The primary purpose of this article is to introduce you to the platform, so here we go:
Android Inc. was founded in 2003 by Andy Rubin, Rich Miner, Chris White, and Nick Sears in Palo Alto, California (where else?) to develop smarter mobile devices that would be increasingly aware of the user's location and preferences. The goings-on of Android, Inc. was kept under tight wraps and in 2005 Google, seeking to expand operations into the mobile communications market, bought Android, Inc. for an undisclosed amount. The founding Android team was on-boarded to Google and continue to architect the development of the Android platform as Google began sharing technical specifications for the platform with hardware manufacturers.
The Android stack consists of an operating system and middleware and is based on a modified version of the Linux kernel. Development for Android happens through a Java programming interface. The officially supported IDE for Android is Eclipse, running the Android SDK plugin. Applications developed for Android are sold on the Android market.
- Activity- In Android development, an "activity" represents a task that the application does. An activity is usually tied to a corresponding view (or screen) in the UI.
- View- A view is a particular screen displaying UI components that inherit from android.view.View. The layout of the view is managed by android.view.ViewGroups.
- Service- A background worker thread that does not interfere with the UI thread.
- Intent- An intent in Android is an asynchronous message that the application uses to contact servicies, activities, and other applications.
- Broadcast Reciever- An event listner that lisens for certain intents/events.
This article was intended to let you know what Android is from a developer's perspective and why it is worthy of your attention. Tutorials that walk you through actual development projects are coming soon. Thanks for reading!