Android Programming - Day One

In this article series, I will explain about various sections of Android Application Development. This is day one of the series.

In this article series, I will explain about 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 which 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.  2Android Versions

Following table shows a brief history of Android Versions which are based on different type 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

HOMEContactsPhoneBrowser

APPLICATION FRAMEWORK

Activity ManagerWindow ManagerContent ProvidersView System
Package Manager
Telephony ManagerResource ManagerLocation Manager`
Notification Manager   

LIBRARIES ANDROID RUNTIME

Surface ManagerMedia FrameworkSQLiteOpen GL/ESDalvik Virtual Machine
FreeTypeWebKitSGLSSLCore Libraries

LINUX KERNEL

Display DriverCamera DriverFlash Memory DriverKeypad Driver
Wi-Fi DriverAudio DriversPower 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 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 Android studio and necessary SDK tools as per Setup Wizard. Below picture shows that it is already installed in the system.

 

At the time of 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 point 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 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 above image.

Click on SDK Manager icon to install 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 above required APIs provided by Google (Google Map library), finally the environment is complete for Android programming.

 
Read more articles on Android: