Developers have full access to the same framework. The
core applications use APIs. The application architecture is
designed to simplify the reuse of components; any
application can publish its abilities and any other application
may then make use of those abilities. This same mechanism
permits components to be replaced by the user.
From top to bottom Android platform is composed of the
Linux kernel, system libraries, Android run time, application
framework and so on five parts. It is shown in Figure 1 of
the following: