Known Indirect Subclasses
Base interface implemented by all Drive event types. An application can express interest in receiving events by adding an event listener or declaring an event listener service.
An event listener implements the listener interface for a particular event type and
receives a direct callback from the Drive service to the client application that is
currently connected. A listener is added by calling the appropriate
add method on the
DriveResource of interest. Listeners are
active for the duration of the current connection or until the
method is called on the same entity with the same callback parameter.
An event service must be declared in an application's manifest to indicate that an application is interested in receiving events via bound service AIDL calls on the event service, even if the application is not currently connected or even running.
A subscription is added by calling the appropriate
add method on the
DriveResource of interest.
Subscriptions are active until the
remove method is called on the
same entity or until the next device reboot. An application that is interested in maintaining
any subscriptions across reboots should handle the
ACTION_BOOT_COMPLETED intent to add back these subscriptions after
the reboot has completed.
Some event types will also support the ability to request event delivery using the
ExecutionOptions parameter that is passed to a Drive API
call. This will indicate that the requested events be delivered to the event service for as
long as the operation is active, i.e. until it has successfully completed or permanently failed.
Events will be delivered to all registered listeners, subscribers, and/or enabled operations that match the event. The same event may be delivered to more than one listener or service when appropriate.