Mudanças entre as edições de "Intents"
(Criou página com 'Intents bind individual components to each other at runtime (you can think of them as the messengers that request an action from other components), whether the component bel...') |
|||
Linha 38: | Linha 38: | ||
* You can perform a query to a content provider by calling <code>query()</code> on a <code>ContentResolver</code>. | * You can perform a query to a content provider by calling <code>query()</code> on a <code>ContentResolver</code>. | ||
For more information about using intents, see the Intents and Intent Filters document. More information about activating specific components is also provided in the following documents: Activities, Services, <code>BroadcastReceiver</code> and Content Providers. | For more information about using intents, see the Intents and Intent Filters document. More information about activating specific components is also provided in the following documents: Activities, Services, <code>BroadcastReceiver</code> and Content Providers. | ||
+ | [[Categoria:Android]] |
Edição atual tal como às 08h02min de 27 de abril de 2015
Intents bind individual components to each other at runtime (you can think of them as the messengers that request an action from other components), whether the component belongs to your application or another.
An intent is created with an Intent
object, which defines a message to activate either a specific component or a specific type of component—an intent can be either explicit or implicit, respectively.
For
activities and services, an intent defines the action to perform (for
example, to "view" or "send" something) and may specify the URI of the
data to act on (among other things that the component being started
might need to know). For example, an intent might convey a request for
an activity to show an image or to open a web page. In some cases, you
can start an activity to receive a result, in which case, the activity
also returns the result in an Intent
(for example, you can issue an intent to let the user pick a personal
contact and have it returned to you—the return intent includes a URI
pointing to the chosen contact).
For broadcast receivers, the intent simply defines the announcement being broadcast (for example, a broadcast to indicate the device battery is low includes only a known action string that indicates "battery is low").
The other component type, content provider, is not
activated by intents. Rather, it is activated when targeted by a request
from a ContentResolver
.
The content resolver handles all direct transactions with the content
provider so that the component that's performing transactions with the
provider doesn't need to and instead calls methods on the ContentResolver
object. This leaves a layer of abstraction between the content provider
and the component requesting information (for security).
There are separate methods for activiting each type of component:
- You can start an activity (or give it something new to do) by passing an
Intent
tostartActivity()
orstartActivityForResult()
(when you want the activity to return a result). - You can start a service (or give new instructions to an ongoing service) by passing an
Intent
tostartService()
. Or you can bind to the service by passing anIntent
tobindService()
. - You can initiate a broadcast by passing an
Intent
to methods likesendBroadcast()
,sendOrderedBroadcast()
, orsendStickyBroadcast()
. - You can perform a query to a content provider by calling
query()
on aContentResolver
.
For more information about using intents, see the Intents and Intent Filters document. More information about activating specific components is also provided in the following documents: Activities, Services, BroadcastReceiver
and Content Providers.