Android Programming - Day One

Introduction

 
In this article series, I will explain various sections of Android Application Development. In day one, we will see the following points:
  1. What is Android?
  2. Android Versions.
  3. Android Architecture
  4. Different type of Android devices
  5. Steps to get the tools and SDK for creating environment for Android application. Below picture says 'Who Am I ?'
 

1.   1. What is Android?

 
Android is a mobile operating system that is based on a modified version of Linux. It was first developed by a startup company with name Android Inc. In 2005, Google purchased it and took over its development work.
 

2.  2. Android Versions

 
The following table shows a brief history of Android Versions which are based on different types of fruit names along with release date.
 
Version
Release Date
CodeName
1.1
9th Feb 2009

1.5
30th April 2009
Cupcake
1.6
15th Sep 2009
Donut
2.0 and 2.1
26th Oct 2009
Éclair
2.2
20th May 2010
Froyo
2.3
6th Dec 2010
Gingerbread
3.0, 3.1, 3.2
22nd Feb 2011
Honeycumb
4.0
19th Oct 2011
Ice Cream Sandwich
4.1
9th July 2012
Jelly Beans
4.4
31st Oct 2013
Kitkat
5.0
12th Nov 2014
Lollipop
 

3. Architecture

 
It is very important to know about the architecture of the Android operating system before start programming for Android application development.
 
The Android Operating System is roughly into five sections in four main layers.
  • 3.1 Linux Kernel - Android is based on Linux Kernel. This layer contains all the low-level device drivers for the various hardware components.
  • 3.2 Libraries – It contains all the code that provides the main features of an Android OS. e.g Libraries of SQLite, WebKit, etc.
  • 3.3 Android Runtime- It provides a set of core libraries that enable developers to write Android apps using the Java Programming Language. It also includes the Dalvik virtual machine, which enables every Android application to run in its own process.
  • 3.4 Application Framework- It exposes the various capabilities of the OS to application developers to use them in the applications.
  • 3.5 Applications-Any applications that the developers write are located in this layer.
APPLICATIONS
 
HOME Contacts Phone Browser
 
APPLICATION FRAMEWORK
 
Activity Manager Window Manager Content Providers View System
Package Manager Telephony Manager Resource Manager Location Manager`
Notification Manager      
 
LIBRARIES ANDROID RUNTIME
 
Surface Manager Media Framework SQLite Open GL/ES Dalvik Virtual Machine
FreeType WebKit SGL SSL Core Libraries
 
LINUX KERNEL
 
Display Driver Camera Driver Flash Memory Driver Keypad Driver
Wi-Fi Driver Audio Drivers Power Management  
 

4. Different types of Android devices

 
Various types of Android devices are in the market with different shapes and sizes.
  • 4.1 Smartphones
  • 4.2 Tablets
  • 4.3 Netbooks
  • 4.4 MP4 players
  • 4.5 Internet TVs
 
 
 

5. Steps to get the tools and SDK for creating an environment for Android application.

 
Android SDK is the most important software that is required to download because it contains a debugger, libraries, an emulator, documentation,   sample code and many tutorials. So you can download it from http://developer.android.com/sdk/index.html.
 
 
 
When the file download is complete, install the Android studio and necessary SDK tools as per Setup Wizard. The below picture shows that it is already installed in the system.
 
 
At the time of the installation of Android Studio, it might give an error due to JDK is not installed in the system. To check which version of Java is installed, open a command line and type javac -version.
 
 
If the JDK is not available or the version is lower than 1.8, download it from http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html,
 
 
When JDK download completes, install it and set a new system variable JAVA_HOME that points to the JDK installed folder.
e.g C:\Program Files\Java\jdk1.8.0_25
 
To create JAVA_HOME variable, select Start Menu->Computer->System Properties->Advanced System Properties. Open Advanced Tab->Environment Variables.
 
Thus we have created a complete environment for Android programming.
 
 
 
Before starting programming, we will have to configure the Android SDK Manager. Open Android Studio from the desktop icon display in the above image.
 
Click on the SDK Manager icon to install the SDK manager.
 
 
It manages the various versions of Android SDK which are currently installed on the system.
 
 
Each version of the Android OS is identified by an API level number. After installing the above-required APIs provided by Google (Google Map library), finally the environment is complete for Android programming.
 
 
Read more articles on Android