What is an Intent? Describe three common use cases for using an Intent.

Copied from https://developer.android.com/guide/components/intents-filters.html

An intent is an abstract description of an operation to be performed and the data to operate on.

  • To start an activity:

    You can start a new instance of an Activity by passing an Intent to startActivity() method. to dial a phone call, to list contacts, to call camera for taking a photo, or display a web page.

  • To start a service or bind a service to communicate with a background Service.

    You can start a service to perform a one-time operation (such as download a file) by passing an Intent to startService().

  • To broadcast an intent to any interested BroadcastReceiver.

    You can deliver a broadcast to other apps by passing an Intent to sendBroadcast(), sendOrderedBroadcast(), or sendStickyBroadcast().