The Android software stack generally consists of a Linux kernel and a collection of C/C++ libraries that are exposed through an application framework that provides services, and management of the applications and run time.
It has the following components:
Linux kernel: Linux kernel gives a degree of deliberation between the gadget equipment and it contains all the fundamental equipment drivers like camera, keypad, show and so forth. Likewise, the portion handles every one of the things that Linux is great at, for example, organizing and a vast array of device drivers, which remove the from interfacing to peripheral equipment.
Libraries : Over Linux kernel there is a set of libraries including open-source Web browser engine WebKit, well known library libc, SQLite database which is a helpful repository for capacity and sharing of application information, libraries to play and record sound and video, SSL libraries in charge of Internet security and so on.
Android Libraries: This category encompasses those Java-based libraries that are specific to Android development.
Android Runtime: The Android runtime also provides a set of core libraries which enable Android application developers to write Android applications using standard Java programming language.
Application Framework : The Application Framework layer gives numerous higher-level administrations to applications as Java classes. Application designers are permitted to utilize these administrations in their applications.
Applications : You will discover all the Android application at the top layer. You will compose your application to be introduced on this layer only. Instances of such applications are Contacts Books, Browser, Games and so forth.
This forum thread discusses what is the android application architecture?. You can join the discussion by clicking on 'Post a reply'. If you are new to Android Developers Forum, you will need to sign up and create a new account.