ObservingDevicePresenceRequest.Builder


public static final class ObservingDevicePresenceRequest.Builder
extends Object

java.lang.Object
   ↳ android.companion.ObservingDevicePresenceRequest.Builder


A builder for ObservingDevicePresenceRequest

Summary

Public constructors

Builder()

Public methods

ObservingDevicePresenceRequest build()

ObservingDevicePresenceRequest.Builder setAssociationId(int associationId)

Set the association id to be observed for device presence.

ObservingDevicePresenceRequest.Builder setUuid(ParcelUuid uuid)

Set the ParcelUuid to be observed for device presence.

Inherited methods

Public constructors

Builder

public Builder ()

Public methods

build

public ObservingDevicePresenceRequest build ()

Returns
ObservingDevicePresenceRequest This value cannot be null.

setAssociationId

public ObservingDevicePresenceRequest.Builder setAssociationId (int associationId)

Set the association id to be observed for device presence.

The provided device must be associated with the calling app before calling this method if using this API. Caller must implement a single CompanionDeviceService which will be bound to and receive callbacks to CompanionDeviceService.onDevicePresenceEvent(DevicePresenceEvent).

Calling apps must use either setUuid(android.os.ParcelUuid) or this API, but not both.

Parameters
associationId int: The association id for observing device presence.

Returns
ObservingDevicePresenceRequest.Builder This value cannot be null.

setUuid

public ObservingDevicePresenceRequest.Builder setUuid (ParcelUuid uuid)

Set the ParcelUuid to be observed for device presence.

It does not require to create the association before calling this API. This only supports classic Bluetooth scan and caller must implement a single CompanionDeviceService which will be bound to and receive callbacks to CompanionDeviceService.onDevicePresenceEvent(DevicePresenceEvent).

The Uuid should be matching one of the ParcelUuid form BluetoothDevice.getUuids()

Calling apps must use either this API or setAssociationId(int), but not both.

Calling app must hold the AssociationRequest.DEVICE_PROFILE_AUTOMOTIVE_PROJECTION profile.


Requires Manifest.permission.REQUEST_OBSERVE_DEVICE_UUID_PRESENCE and Manifest.permission.BLUETOOTH_CONNECT and Manifest.permission.BLUETOOTH_SCAN

Parameters
uuid ParcelUuid: The ParcelUuid for observing device presence. This value cannot be null.

Returns
ObservingDevicePresenceRequest.Builder This value cannot be null.