Introduction About Android

Android is hailed as "the first complete, open, and free mobile platform". Android is a software stack for mobile devices and it's including also operating systems, middleware, and key applications. The much anticipated Android 1.5 SDK release is scheduled to be released in late April 2009. The Android Software Development Kit (SDK) provides the APIs and tools for developing applications for the Android platform by using the Java programming language.

Features

Android architecture

system-architecture.jpg

What are Applications?

Android supports all the core applications which are written in Java. For example SMS program, calendar, browser, contact, etc. These are written in Java so it supported by the Android SDK.

What is the Application Framework?

Android provides an open development platform. And it provides the facility to build extremely rich and innovative applications. The Android SDK provides many advantages to a developer such as device hardware, access location information, run background service, set alarm and add notification to the status bar. Developers have full access to the same framework APIs used by the core applications. The application architecture is designed to simplify the reuse of components; any application can publish its capabilities and any other application may then make use of those capabilities (subject to security constraints enforced by the framework). This same mechanism allows components to be replaced by the user.

Use of Libraries tools

Android includes a large number of libraries. Some of the core library is listed following. This is one of the features for exposing the capability of the developer.

Android Runtime Environment

The Android Runtime contains two things; they are core libraries and the Dalvik Virtual machine. The core libraries that provide most of the functionality is available in the core Java APIs. Every Android application process runs in its own process with its own instance of Dalvik virtual machine. Dalvik VM is allow to create multiple instances easily. The Delvik executes all files having the Delvik Executable (.dex) formats which are an optimized minimal memory footprint. All the Java compile files (.class files) are converted to the .dex format by including then with the "dx" tool.

Linux Kernel

You know that kernel is one of the programs which is run every time in a system and it provides a hardware interaction to the software; it is also said that the kernel provides a platform to run any software. Android relies on Linux version 2.6 for the core system services such as security, memory management, process management, network stack, and driver model.
Resources