What is Android Application Framework
Each Android app has a “manifest” file, Android Manifest.XML, that lists each component that an app includes, and which Intents, if any, will trigger these components to do work.
By providing an open development platform, Android application framework offers developers the ability to build extremely rich and innovative applications. Developers are free to take advantage of the device hardware, access location information, run background services, set alarms, add notifications to the status bar, and much, much more.
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.
The Android application framework involves in a set of services and systems, including:
1. A rich and extensible set of Views that can be used to build an application, including lists, grids, text boxes, buttons, and even an embeddable web browser
2. Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data
3. A Resource Manager, providing access to non-code resources such as localized strings, graphics, and layout files
4. A Notification Manager that enables all applications to display custom alerts in the status bar
5. An Activity Manager that manages the lifecycle of applications and provides a common navigation backstack.
Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language. Every Android application runs in its own process.