Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Nested Classes](https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#nestedclasses) \| [Constants](https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#constants) \| [Inherited Constants](https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#inhconstants) \| [Fields](https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#lfields) \| [Methods](https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#inhmethods)

# ResponderConfig

*** ** * ** ***

` public final class ResponderConfig `   
` extends https://developer.android.com/reference/java/lang/Object ` ` implements https://developer.android.com/reference/android/os/Parcelable `

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.net.wifi.rtt.ResponderConfig |

<br />

*** ** * ** ***

Defines the configuration of an IEEE 802.11mc Responder. The Responder may be an Access Point (AP), a Wi-Fi Aware device, or a manually configured Responder.

A Responder configuration may be constructed from a `https://developer.android.com/reference/android/net/wifi/ScanResult` or manually (with the data obtained out-of-band from a peer).

## Summary

| ### Nested classes ||
|---|---|
| ` class` | `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig.Builder` Builder class used to construct `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig` objects. |

| ### Constants ||
|---|---|
| `int` | `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#RESPONDER_AP` Responder is an access point(AP). |
| `int` | `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#RESPONDER_STA` Responder is a client device(STA). |

### Inherited constants

From interface `https://developer.android.com/reference/android/os/Parcelable` `int` `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR`

Descriptor bit used with `https://developer.android.com/reference/android/os/Parcelable#describeContents()`: indicates that the Parcelable object's flattened representation includes a file descriptor.
`int` `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE`

Flag for use with `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`: the object being written is a return value, that is the result of a function such as "`Parcelable someFunction()`", "`void someFunction(out Parcelable)`", or "`void someFunction(inout Parcelable)`".

| ### Fields ||
|---|---|
| ` public static final https://developer.android.com/reference/android/os/Parcelable.Creator<https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig>` | `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#CREATOR` <br /> |

| ### Public methods ||
|---|---|
| ` int` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
| ` boolean` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object o) ` Indicates whether some other object is "equal to" this one. |
| ` static https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#fromScanResult(android.net.wifi.ScanResult)(https://developer.android.com/reference/android/net/wifi/ScanResult scanResult) ` Creates a Responder configuration from a `https://developer.android.com/reference/android/net/wifi/ScanResult` corresponding to an Access Point (AP), which can be obtained from `https://developer.android.com/reference/android/net/wifi/WifiManager#getScanResults()`. |
| ` int` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getCenterFreq0Mhz()() ` If the Access Point (AP) bandwidth is 20 MHz, 0 MHz is returned. |
| ` int` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getCenterFreq1Mhz()() ` If the Access Point (AP) bandwidth is 80 + 80 MHz, this param is not used and returns 0. |
| ` int` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getChannelWidth()() ` AP Channel bandwidth; one of `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_20MHZ`, `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_40MHZ`, `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_80MHZ`, `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_160MHZ`, `https://developer.android.com/reference/android/net/wifi/ScanResult` or `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_320MHZ`. |
| ` int` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getFrequencyMhz()() ` |
| ` https://developer.android.com/reference/android/net/MacAddress` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getMacAddress()() ` |
| ` https://developer.android.com/reference/android/net/wifi/aware/PeerHandle` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getPeerHandle()() ` Returns the Wi-Fi Aware peer identifier of the responder. |
| ` int` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getPreamble()() ` Get the preamble type of the channel. |
| ` int` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getResponderType()() ` Get responder type. |
| ` https://developer.android.com/reference/android/net/wifi/rtt/SecureRangingConfig` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getSecureRangingConfig()() ` Get secure ranging configuration. |
| ` int` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getUsdPeerId()() ` Returns the USD peer identifier of the responder. |
| ` int` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#hashCode()() ` Returns a hash code value for the object. |
| ` boolean` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#is80211azNtbSupported()() ` |
| ` boolean` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#is80211mcSupported()() ` |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#toString()() ` Returns a string representation of the object. |
| ` void` | ` https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) ` Flatten this object in to a Parcel. |

### Inherited methods

From class ` https://developer.android.com/reference/java/lang/Object ` ` https://developer.android.com/reference/java/lang/Object` ` https://developer.android.com/reference/java/lang/Object#clone()() `

Creates and returns a copy of this object.
` boolean` ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) `

Indicates whether some other object is "equal to" this one.
` void` ` https://developer.android.com/reference/java/lang/Object#finalize()() `

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
` final https://developer.android.com/reference/java/lang/Class<?>` ` https://developer.android.com/reference/java/lang/Object#getClass()() `

Returns the runtime class of this `Object`.
` int` ` https://developer.android.com/reference/java/lang/Object#hashCode()() `

Returns a hash code value for the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#notify()() `

Wakes up a single thread that is waiting on this object's monitor.
` final void` ` https://developer.android.com/reference/java/lang/Object#notifyAll()() `

Wakes up all threads that are waiting on this object's monitor.
` https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/lang/Object#toString()() `

Returns a string representation of the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait()() `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*.
From interface ` https://developer.android.com/reference/android/os/Parcelable ` ` abstract int` ` https://developer.android.com/reference/android/os/Parcelable#describeContents()() `

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.
` abstract void` ` https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) `

Flatten this object in to a Parcel.

## Constants

### RESPONDER_AP

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int RESPONDER_AP
```

Responder is an access point(AP).

<br />

Constant Value: 0 (0x00000000)

### RESPONDER_STA

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final int RESPONDER_STA
```

Responder is a client device(STA).

<br />

Constant Value: 1 (0x00000001)

## Fields

### CREATOR

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final Creator<ResponderConfig> CREATOR
```

<br />

<br />

## Public methods

### describeContents

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
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 `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`, the return value of this method must include the `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` bit.

<br />

| Returns ||
|---|---|
| `int` | a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either `0` or - `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` |

### equals

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
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.

<br />

| Parameters ||
|---|---|
| `o` | `Object`: This value may be `null`. <br /> |

| Returns ||
|---|---|
| `boolean` | `true` if this object is the same as the obj argument; `false` otherwise. <br /> |

### fromScanResult

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static ResponderConfig fromScanResult (ScanResult scanResult)
```

Creates a Responder configuration from a `https://developer.android.com/reference/android/net/wifi/ScanResult` corresponding to an Access Point (AP), which can be obtained from `https://developer.android.com/reference/android/net/wifi/WifiManager#getScanResults()`.

<br />

| Parameters ||
|---|---|
| `scanResult` | `ScanResult`: This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig` | This value cannot be `null`. <br /> |

### getCenterFreq0Mhz

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getCenterFreq0Mhz ()
```

If the Access Point (AP) bandwidth is 20 MHz, 0 MHz is returned. If the AP use 40, 80 or 160 MHz, this is the center frequency (in MHz). if the AP uses 80 + 80 MHz, this is the center frequency of the first segment (in MHz).

<br />

| Returns ||
|---|---|
| `int` | the center frequency in MHz of the first channel segment. Value is 0 or greater <br /> |

### getCenterFreq1Mhz

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getCenterFreq1Mhz ()
```

If the Access Point (AP) bandwidth is 80 + 80 MHz, this param is not used and returns 0. If the AP uses 80 + 80 MHz, this is the center frequency of the second segment in MHz.

<br />

| Returns ||
|---|---|
| `int` | the center frequency in MHz of the second channel segment (if used). Value is 0 or greater <br /> |

### getChannelWidth

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getChannelWidth ()
```

AP Channel bandwidth; one of `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_20MHZ`, `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_40MHZ`, `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_80MHZ`, `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_160MHZ`, `https://developer.android.com/reference/android/net/wifi/ScanResult` or `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_320MHZ`.

<br />

| Returns ||
|---|---|
| `int` | the bandwidth repsentation of the Wi-Fi channel. Value is one of the following: - `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_20MHZ` - `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_40MHZ` - `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_80MHZ` - `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_160MHZ` - `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_80MHZ_PLUS_MHZ` - `https://developer.android.com/reference/android/net/wifi/ScanResult#CHANNEL_WIDTH_320MHZ` |

### getFrequencyMhz

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getFrequencyMhz ()
```

<br />

<br />

| Returns ||
|---|---|
| `int` | the frequency in MHz of the Wi-Fi channel. Value is 0 or greater <br /> |

### getMacAddress

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public MacAddress getMacAddress ()
```

<br />

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/net/MacAddress` | the MAC address of the responder. This value may be `null`. <br /> |

### getPeerHandle

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public PeerHandle getPeerHandle ()
```

Returns the Wi-Fi Aware peer identifier of the responder.

This value is non-null if the responder is a Wi-Fi Aware peer and was configured using a `https://developer.android.com/reference/android/net/wifi/aware/PeerHandle` (via `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig.Builder#setPeerHandle(android.net.wifi.aware.PeerHandle)`). The `https://developer.android.com/reference/android/net/wifi/aware/PeerHandle` is an opaque identifier for a specific Aware peer discovered during Wi-Fi Aware operations, such as service discovery.

If the responder is not an Aware peer, or if it was configured using its MAC address (via `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig.Builder#setMacAddress(android.net.MacAddress)`), this method will return `null`.

Only one of `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getPeerHandle()` or `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#getMacAddress()` will return a non-null value for a valid `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig`.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/net/wifi/aware/PeerHandle` | The `https://developer.android.com/reference/android/net/wifi/aware/PeerHandle` of the Wi-Fi Aware responder, or `null` if the responder is not an Aware peer or is identified by its MAC address. <br /> |

### getPreamble

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getPreamble ()
```

Get the preamble type of the channel.

<br />

| Returns ||
|---|---|
| `int` | the preamble used for this channel. Value is one of the following: - `https://developer.android.com/reference/android/net/wifi/ScanResult#PREAMBLE_LEGACY` - `https://developer.android.com/reference/android/net/wifi/ScanResult#PREAMBLE_HT` - `https://developer.android.com/reference/android/net/wifi/ScanResult#PREAMBLE_VHT` - `https://developer.android.com/reference/android/net/wifi/ScanResult#PREAMBLE_HE` - `https://developer.android.com/reference/android/net/wifi/ScanResult#PREAMBLE_EHT` |

### getResponderType

Added in [API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getResponderType ()
```

Get responder type.

<br />

| Returns ||
|---|---|
| `int` | The type of this responder. Value is one of the following: - `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#RESPONDER_AP` - `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig#RESPONDER_STA` |

**See also:**

- `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig.Builder#setResponderType(int)`

### getSecureRangingConfig

Added in [API level 36](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public SecureRangingConfig getSecureRangingConfig ()
```

Get secure ranging configuration.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/net/wifi/rtt/SecureRangingConfig` | Secure ranging configuration. Returns null for non-secure ranging configuration. <br /> |

### getUsdPeerId

Added in [API level 37](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getUsdPeerId ()
```

Returns the USD peer identifier of the responder.

This value is non-negative if the responder is a USD peer and was configured using a peer ID (via `https://developer.android.com/reference/android/net/wifi/rtt/ResponderConfig.Builder#setUsdPeerId(int)`). The peer ID is an opaque identifier for a specific USD peer discovered during USD discovery operations.

<br />

| Returns ||
|---|---|
| `int` | The peer ID of the USD responder, or `-1` if not set. <br /> |

### hashCode

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
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 `https://developer.android.com/reference/java/util/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 `https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)` 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 `https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)` 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.

<br />

<br />

| Returns ||
|---|---|
| `int` | a hash code value for this object. <br /> |

### is80211azNtbSupported

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean is80211azNtbSupported ()
```

<br />

<br />

| Returns ||
|---|---|
| `boolean` | true if the Responder supports the 802.11az non-trigger based ranging protocol, false otherwise. <br /> |

### is80211mcSupported

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean is80211mcSupported ()
```

<br />

<br />

| Returns ||
|---|---|
| `boolean` | true if the Responder supports the 802.11mc protocol, false otherwise. <br /> |

### toString

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public String toString ()
```

Returns a string representation of the object.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | a string representation of the object. <br /> |

### writeToParcel

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void writeToParcel (Parcel dest, 
                int flags)
```

Flatten this object in to a Parcel.

<br />

| Parameters ||
|---|---|
| `dest` | `Parcel`: This value cannot be `null`. <br /> |
| `flags` | `int`: Additional flags about how the object should be written. May be 0 or `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE`. Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` |