RangingRequest


public final class RangingRequest
extends Object implements Parcelable

java.lang.Object
   ↳ android.net.wifi.rtt.RangingRequest


Defines the ranging request to other devices. The ranging request is built using RangingRequest.Builder. A ranging request is executed using WifiRttManager.startRanging(RangingRequest, java.util.concurrent.Executor, RangingResultCallback).

The ranging request is a batch request - specifying a set of devices (specified using RangingRequest.Builder.addAccessPoint(ScanResult) and RangingRequest.Builder.addAccessPoints(List)).

Summary

Nested classes

class RangingRequest.Builder

Builder class used to construct RangingRequest objects. 

Constants

int SECURITY_MODE_OPEN

In this mode, the ranging is performed with all available responders in open mode.

int SECURITY_MODE_OPPORTUNISTIC

In this mode, secure ranging is enabled automatically for compatible responders, simplifying the user experience and requiring no configuration.

int SECURITY_MODE_SECURE_AUTH

To ensure maximum security, this mode only ranges with responders using PASN with base AKM (Authenticated).

Inherited constants

Fields

public static final Creator<RangingRequest> CREATOR

Public methods

int describeContents()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.

boolean equals(Object o)

Indicates whether some other object is "equal to" this one.

static int getDefaultRttBurstSize()

Returns the default RTT burst size used to determine the average range.

static int getMaxPeers()

Returns the maximum number of peers to range which can be specified in a single RangingRequest.

static int getMaxRttBurstSize()

Returns the minimum RTT burst size that can be used to determine a average range.

static int getMinRttBurstSize()

Returns the minimum RTT burst size that can be used to determine a average range.

int getRttBurstSize()

Returns the RTT burst size used to determine the average range.

int getSecurityMode()

Returns security mode for the ranging request.

int hashCode()

Returns a hash code value for the object.

void writeToParcel(Parcel dest, int flags)

Flatten this object in to a Parcel.

Inherited methods

Constants

SECURITY_MODE_OPEN

public static final int SECURITY_MODE_OPEN

In this mode, the ranging is performed with all available responders in open mode. If a responder does not allow open mode ranging, the responder will be skipped from the ranging request.

Note: If ScanResult.isRangingFrameProtectionRequired() is true, then open mode ranging is not supported by the AP.

Constant Value: 0 (0x00000000)

SECURITY_MODE_OPPORTUNISTIC

public static final int SECURITY_MODE_OPPORTUNISTIC

In this mode, secure ranging is enabled automatically for compatible responders, simplifying the user experience and requiring no configuration. If the secure ranging is not possible for any of the responders, open mode ranging is used instead as in SECURITY_MODE_OPEN. This mode is backward compatible with existing applications. Note: This is the default mode

Constant Value: 1 (0x00000001)

SECURITY_MODE_SECURE_AUTH

public static final int SECURITY_MODE_SECURE_AUTH

To ensure maximum security, this mode only ranges with responders using PASN with base AKM (Authenticated). This necessitates an authenticated PASN handshake with a shared key between the initiator and responder. Consequently, all responders in the ranging request must support secure authentication. If not supported, the responder will be skipped from the ranging request.

Constant Value: 2 (0x00000002)

Fields

CREATOR

Added in API level 28
public static final Creator<RangingRequest> CREATOR

Public methods

describeContents

Added in API level 28
public int describeContents ()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. For example, if the object will include a file descriptor in the output of writeToParcel(android.os.Parcel, int), the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.

Returns
int a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or CONTENTS_FILE_DESCRIPTOR

equals

Added in API level 28
public boolean equals (Object o)

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
o Object: This value may be null.

Returns
boolean true if this object is the same as the obj argument; false otherwise.

getDefaultRttBurstSize

Added in API level 31
public static int getDefaultRttBurstSize ()

Returns the default RTT burst size used to determine the average range.

Returns
int the RTT burst size used by default

getMaxPeers

Added in API level 28
public static int getMaxPeers ()

Returns the maximum number of peers to range which can be specified in a single RangingRequest. The limit applies no matter how the peers are added to the request, e.g. through RangingRequest.Builder.addAccessPoint(ScanResult) or RangingRequest.Builder.addAccessPoints(List).

Returns
int Maximum number of peers.

getMaxRttBurstSize

Added in API level 31
public static int getMaxRttBurstSize ()

Returns the minimum RTT burst size that can be used to determine a average range.

Returns
int the maximum RTT burst size that can be used

getMinRttBurstSize

Added in API level 31
public static int getMinRttBurstSize ()

Returns the minimum RTT burst size that can be used to determine a average range.

Returns
int the minimum RTT burst size that can be used

getRttBurstSize

Added in API level 31
public int getRttBurstSize ()

Returns the RTT burst size used to determine the average range.

Returns
int the RTT burst size used

getSecurityMode

public int getSecurityMode ()

Returns security mode for the ranging request. See SECURITY_MODE_* for more details.

Returns
int security mode for the ranging request Value is SECURITY_MODE_OPEN, SECURITY_MODE_OPPORTUNISTIC, or SECURITY_MODE_SECURE_AUTH

hashCode

Added in API level 28
public int hashCode ()

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

Returns
int a hash code value for this object.

writeToParcel

Added in API level 28
public void writeToParcel (Parcel dest, 
                int flags)

Flatten this object in to a Parcel.

Parameters
dest Parcel: The Parcel in which the object should be written. This value cannot be null.

flags int: Additional flags about how the object should be written. May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES