Skip to content

Most visited

Recently visited

navigation

CompanionDeviceManager

public final class CompanionDeviceManager
extends Object

java.lang.Object
   ↳ android.companion.CompanionDeviceManager


System level service for managing companion devices

To obtain an instance call getSystemService(Class)(COMPANION_DEVICE_SERVICE) Then, call associate(AssociationRequest, Callback, Handler) to initiate the flow of associating current package with a device selected by user.

See also:

Summary

Nested classes

class CompanionDeviceManager.Callback

A callback to receive once at least one suitable device is found, or the search failed (e.g. 

Constants

String EXTRA_DEVICE

A device, returned in the activity result of the IntentSender received in onDeviceFound(IntentSender)

Public methods

void associate(AssociationRequest<?> request, CompanionDeviceManager.Callback callback, Handler handler)

Associate this app with a companion device, selected by user

Once at least one appropriate device is found, callback will be called with a PendingIntent that can be used to show the list of available devices for the user to select.

Inherited methods

From class java.lang.Object

Constants

EXTRA_DEVICE

String EXTRA_DEVICE

A device, returned in the activity result of the IntentSender received in onDeviceFound(IntentSender)

Constant Value: "android.companion.extra.DEVICE"

Public methods

associate

void associate (AssociationRequest<?> request, 
                CompanionDeviceManager.Callback callback, 
                Handler handler)

Associate this app with a companion device, selected by user

Once at least one appropriate device is found, callback will be called with a PendingIntent that can be used to show the list of available devices for the user to select. It should be started for result (i.e. using startIntentSenderForResult(IntentSender, int, Intent, int, int, int)), as the resulting Intent will contain extra EXTRA_DEVICE, with the selected device. (e.g. BluetoothDevice)

If your app needs to be excluded from battery optimizations (run in the background) or to have unrestricted data access (use data in the background) you can declare that you use the RUN_IN_BACKGROUND and USE_DATA_IN_BACKGROUND respectively. Note that these special capabilities have a negative effect on the device's battery and user's data usage, therefore you should requested them when absolutely necessary.

Parameters
request AssociationRequest: specific details about this request
callback CompanionDeviceManager.Callback: will be called once there's at least one device found for user to choose from
handler Handler: A handler to control which thread the callback will be delivered on, or null, to deliver it on main thread

See also:

This site uses cookies to store your preferences for site-specific language and display options.

Hooray!

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.