Android - I

In this blog, I will look into the overview of Android and how we can use .NET to build applications for Android. I will continue to explore more until I am ready to create an android app and publish it in the android market. 
Android is an open source, linux based, mobile operating system. The application layer for Android is written in Java. 
Android Architecture
  • Linux kernel - This forms the core. This core has lots of drivers that interact with the actual hardware of the device.
  • Libraries - On top of the core are the libraries mostly written in c and c++. One of the libraries is SQLLite which is the underlying DB used by Android. There is also an Android runtime that consists of its own libraries. Each app runs in its own VM.
  • Application Framework - On top of libraries lies the application framework. Most of our coding is done against this framework.
  • Applications - On top of the application framework lies the actual applications. 
Application Life Cycle
  • Anything that we do in an android app can be termed as a task. For ex. sending an email.
  • A task is a set of activities.
  • These activities get arranged in a stack (LIFO)
  • All apps run in their own process. They also have their own Linux user id.
  • Android does the job of managing memory and killing least important ones. There is a chance that one of the applications that was in a stack, got killed because Android memory management kicked in. So we need to take care of this on our end to restore the killed task.
Coding for Android - To start coding for android, you need the following. 
  • JDK - Java Development Kit. JDK is a development environment for building applications.
  • Eclipse - is an open source JAVA IDE backed by Google.
  • Android SDK starter package - contains core SDK tools
  • ADT - Android Development Tools
This was a very basic introduction to working with Android. In the next blog, I will go a bit deeper to creating and understanding the nuances of building Android applications.

1 comment:

for IT the said...

Hi, Great.. Tutorial is just awesome..It is really helpful for a newbie like me.. I am a regular follower of your blog. Really very informative post you shared here. Kindly keep blogging. If anyone wants to become a Java developer learn from Java Training in Chennai. or learn thru Java Online Training in India . Nowadays Java has tons of job opportunities on various vertical industry.

or Javascript Training in Chennai. Nowadays JavaScript has tons of job opportunities on various vertical industry.