Added in API level 36

Builder


class Builder
kotlin.Any
   ↳ android.ranging.SessionConfig.Builder

Builder for creating instances of SessionConfig.

Summary

Public constructors

Public methods
SessionConfig

Builds a new SessionConfig instance.

SessionConfig.Builder
setAngleOfArrivalNeeded(isAngleOfArrivalNeeded: Boolean)

Sets whether Angle of Arrival (AoA) is required for the ranging operation.

SessionConfig.Builder
setAntennaMode(antennaMode: Int)

Sets the antenna mode for the ranging session which helps in determining the optimal antennas to use for Tx and Rx.

SessionConfig.Builder

Sets the data notification configuration for this preference.

SessionConfig.Builder
setRangingMeasurementsLimit(rangingMeasurementsLimit: Int)

Sets the maximum number of ranging rounds for this session.

SessionConfig.Builder

Sets the sensor fusion parameters for this preference.

Public constructors

Builder

Added in API level 36
Builder()

Public methods

build

Added in API level 36
fun build(): SessionConfig

Builds a new SessionConfig instance.

Return
SessionConfig the new SessionConfig instance.
This value cannot be null.

setAngleOfArrivalNeeded

Added in API level 36
fun setAngleOfArrivalNeeded(isAngleOfArrivalNeeded: Boolean): SessionConfig.Builder

Sets whether Angle of Arrival (AoA) is required for the ranging operation.

Defaults to false

Parameters
isAngleOfArrivalNeeded Boolean: true if AoA data is required; false otherwise.
Return
SessionConfig.Builder The Builder instance.
This value cannot be null.

setAntennaMode

Added in API level 36
fun setAntennaMode(antennaMode: Int): SessionConfig.Builder

Sets the antenna mode for the ranging session which helps in determining the optimal antennas to use for Tx and Rx.

  • This should be set to ANTENNA_MODE_DIRECTIONAL for foreground use-cases like Finder where the user is actively using the device to find another device (longer range in a particular direction).
  • This should be set to ANTENNA_MODE_OMNI for background use-cases like background use-cases like passive unlock when the user is passively using the device to unlock another device (shorter range in all directions).
  • Check android.ranging.uwb.UwbRangingCapabilities#getSupportedAntennaModes() for supported antenna modes on the device. If the mode requested here is not supported, the session will be immediately closed - android.ranging.RangingSession#onClosed(int).
    Parameters
    antennaMode Int: the antenna mode android.ranging.SessionConfig.AntennaMode
    Value is one of the following:
    Return
    SessionConfig.Builder this Builder instance.
    This value cannot be null.
    Exceptions
    java.lang.IllegalArgumentException if the provided mode is out of range.

    setDataNotificationConfig

    Added in API level 36
    fun setDataNotificationConfig(config: DataNotificationConfig): SessionConfig.Builder

    Sets the data notification configuration for this preference.

    Parameters
    config DataNotificationConfig: the DataNotificationConfig to use.
    This value cannot be null.
    Return
    SessionConfig.Builder the builder instance for chaining.
    This value cannot be null.
    Exceptions
    java.lang.IllegalArgumentException if the config is null.

    setRangingMeasurementsLimit

    Added in API level 36
    fun setRangingMeasurementsLimit(rangingMeasurementsLimit: Int): SessionConfig.Builder

    Sets the maximum number of ranging rounds for this session. This includes all ranging rounds, irrespective of whether they were successful or not. For 1:many sessions, a round includes ranging to all peers within that round.

    By default, when the value is set to 0, the ranging session will run indefinitely.

    Parameters
    rangingMeasurementsLimit Int: the maximum number of ranging rounds (0 to 65535).
    Value is between 0 and 65535 inclusive
    Return
    SessionConfig.Builder this Builder instance.
    This value cannot be null.
    Exceptions
    java.lang.IllegalArgumentException if the value is outside the allowed range (0 to 65535).

    setSensorFusionParams

    Added in API level 36
    fun setSensorFusionParams(parameters: SensorFusionParams): SessionConfig.Builder

    Sets the sensor fusion parameters for this preference.

    Parameters
    parameters SensorFusionParams: the SensorFusionParams to use.
    This value cannot be null.
    Return
    SessionConfig.Builder the builder instance.
    This value cannot be null.
    Exceptions
    java.lang.IllegalArgumentException if the parameters is null.