Every Android app will consist of components, a manifest file, and resources.
Components consist of four pieces:
- A single screen with a user interface (aka view)
- Most applications contain multiple activities
- When a new activity starts, it is pushed onto the back stack (Stack of Activities)
- User interface can be built with XML or in Java (Nice separation of UI code + Java logic)
- You can monitor lifespan of an activity through callback methods: onStart(), onPause(), etc.
- They're what you use to perform long-running operations in the background
- Does not contain a user interface. THey're useful for network operations, background music
- Services run independently of the component that created it
- They can be bound to by other application components --if you allow them to.
- Used to store and retrieve data and make it accessible to all applications.
- This is the only way to share data across applications.
- It exposes a public URI that uniquely identifies its data set.
- Data is presented as simple as a simple table on a database model
- Android contains many content providers like contacts, e-mails, media
- It responds to system-wide broadcast announcements
- Example, when the screen turns off, the battery is low, someone has taken a photo.
- Applications can initiate their broadcasts that others can listen to.
- Broadcast receivers contain no user interface.
- They can create status bar notifications to alert the user. "Notifications"
- The purpose of this file is to give the Android system information about your application
- It describes the components in your applications
- It declares the permissions required to run the application
- Declares the minimum Android API level that the use requires