Structurally Android can be broken down into four major parts -
Applications - The actual application that the user interacts with resides in this layer. All your third party applications you create will belong to this part of the system.
Application Framework – The application framework provides usable components for the application developers on top of which new applications can be built. It include things like Views, Resource manager, content providers and notification manager helping the application use underlying standard libraries.
Libraries – It is the C/C++ libraries used by Android system. These are provided to the developer through Application framework.
Linux Kernel – Android uses linux kernel for hardware management and providing hardware abstraction to the rest of the software stack.