- It is a software stack of components to support a mobile device needs
- The stack contains a Linux Kernel, collection of c/c++ libraries which are exposed through an application framework services, runtime, and application
Android architecture components are:
- Android Framework
- Android Runtime
- Platform Libraries
- Linux Kernel
Android Application Components
- Content Providers
- Broadcast Receivers
Activity represents a single screen with a user interface (UI) and it will acts an entry point for user's to interact with app.
Intents helps to go from one activity to another. They are mainly used to perform following things:
- Start a Activity
- Start a Service
- Delivering a Broadcast
There are two types of intents available in android
- Implicit Intents - One activity communicate with another application activity e.g. Webpage
- Explicit Intents - One activity open another activity on a same application.
Service do not have an UI, it runs as a background task. Doing background task without hanging the UI is known as service.
We have two types of services available in android, those are
- Local Services
- Remote Services
Android Service LifeCycle
Android Broadcast Receiver
In android, Broadcast Receiver is a component which will allow a system to deliver events to the app like sending a low battery message to the app.
The apps can also initiate broadcasts to let other apps know that required data available in a device to use it.
Android Content Providers
Content providers are used to exchange the data between the apps based on the requests.
- Fragments - These are used to represent the portion of user interface in an activity.
- Layouts - These are used to define the user interface (UI) for an activity or app.
- Views - These are used to build user interface for an app using UI elements like buttons, lists, etc.
- Resource - To build android app we required external elements like images, audio files, etc. other than coding.
- Manifest File - It's a configuration file (AndroidManifest.xml) for the application and it will contain the information about activities, Intents, Content Providers, Services, Broadcast Receivers, permissions, etc.