ScanResult
public
final
class
ScanResult
extends Object
implements
Parcelable
java.lang.Object | |
↳ | android.bluetooth.le.ScanResult |
ScanResult for Bluetooth LE scan.
Summary
Constants | |
---|---|
int |
DATA_COMPLETE
For chained advertisements, indicates that the data contained in this scan result is complete. |
int |
DATA_TRUNCATED
For chained advertisements, indicates that the controller was unable to receive all chained packets and the scan result contains incomplete truncated data. |
int |
PERIODIC_INTERVAL_NOT_PRESENT
Periodic advertising interval is not present in the packet. |
int |
PHY_UNUSED
Indicates that the secondary physical layer was not used. |
int |
SID_NOT_PRESENT
Advertising Set ID is not present in the packet. |
int |
TX_POWER_NOT_PRESENT
TX power is not present in the packet. |
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Creator<ScanResult> |
CREATOR
|
Public constructors | |
---|---|
ScanResult(BluetoothDevice device, ScanRecord scanRecord, int rssi, long timestampNanos)
This constructor is deprecated.
use |
|
ScanResult(BluetoothDevice device, int eventType, int primaryPhy, int secondaryPhy, int advertisingSid, int txPower, int rssi, int periodicAdvertisingInterval, ScanRecord scanRecord, long timestampNanos)
Constructs a new ScanResult. |
Public methods | |
---|---|
int
|
describeContents()
Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
boolean
|
equals(Object obj)
Indicates whether some other object is "equal to" this one. |
int
|
getAdvertisingSid()
Returns the advertising set id. |
int
|
getDataStatus()
Returns the data status. |
BluetoothDevice
|
getDevice()
Returns the remote Bluetooth device identified by the Bluetooth device address. |
int
|
getPeriodicAdvertisingInterval()
Returns the periodic advertising interval in units of 1.25ms. |
int
|
getPrimaryPhy()
Returns the primary Physical Layer on which this advertisement was received. |
int
|
getRssi()
Returns the received signal strength in dBm. |
ScanRecord
|
getScanRecord()
Returns the scan record, which is a combination of advertisement and scan response. |
int
|
getSecondaryPhy()
Returns the secondary Physical Layer on which this advertisement was received. |
long
|
getTimestampNanos()
Returns timestamp since boot when the scan record was observed. |
int
|
getTxPower()
Returns the transmit power in dBm. |
int
|
hashCode()
Returns a hash code value for the object. |
boolean
|
isConnectable()
Returns true if this object represents connectable scan result. |
boolean
|
isLegacy()
Returns true if this object represents legacy scan result. |
String
|
toString()
Returns a string representation of the object. |
void
|
writeToParcel(Parcel dest, int flags)
Flatten this object in to a Parcel. |
Inherited methods | |
---|---|
Constants
DATA_COMPLETE
public static final int DATA_COMPLETE
For chained advertisements, indicates that the data contained in this scan result is complete.
Constant Value: 0 (0x00000000)
DATA_TRUNCATED
public static final int DATA_TRUNCATED
For chained advertisements, indicates that the controller was unable to receive all chained packets and the scan result contains incomplete truncated data.
Constant Value: 2 (0x00000002)
PERIODIC_INTERVAL_NOT_PRESENT
public static final int PERIODIC_INTERVAL_NOT_PRESENT
Periodic advertising interval is not present in the packet.
Constant Value: 0 (0x00000000)
PHY_UNUSED
public static final int PHY_UNUSED
Indicates that the secondary physical layer was not used.
Constant Value: 0 (0x00000000)
SID_NOT_PRESENT
public static final int SID_NOT_PRESENT
Advertising Set ID is not present in the packet.
Constant Value: 255 (0x000000ff)
TX_POWER_NOT_PRESENT
public static final int TX_POWER_NOT_PRESENT
TX power is not present in the packet.
Constant Value: 127 (0x0000007f)
Fields
Public constructors
ScanResult
public ScanResult (BluetoothDevice device, ScanRecord scanRecord, int rssi, long timestampNanos)
This constructor is deprecated.
use ScanResult(android.bluetooth.BluetoothDevice, int, int, int, int, int, int, int, android.bluetooth.le.ScanRecord, long)
Constructs a new ScanResult.
Parameters | |
---|---|
device |
BluetoothDevice : Remote Bluetooth device found. |
scanRecord |
ScanRecord : Scan record including both advertising data and scan response data. |
rssi |
int : Received signal strength. |
timestampNanos |
long : Timestamp at which the scan result was observed. |
ScanResult
public ScanResult (BluetoothDevice device, int eventType, int primaryPhy, int secondaryPhy, int advertisingSid, int txPower, int rssi, int periodicAdvertisingInterval, ScanRecord scanRecord, long timestampNanos)
Constructs a new ScanResult.
Parameters | |
---|---|
device |
BluetoothDevice : Remote Bluetooth device found. |
eventType |
int : Event type. |
primaryPhy |
int : Primary advertising phy. |
secondaryPhy |
int : Secondary advertising phy. |
advertisingSid |
int : Advertising set ID. |
txPower |
int : Transmit power. |
rssi |
int : Received signal strength. |
periodicAdvertisingInterval |
int : Periodic advertising interval. |
scanRecord |
ScanRecord : Scan record including both advertising data and scan response data. |
timestampNanos |
long : Timestamp at which the scan result was observed. |
Public methods
describeContents
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
public boolean equals (Object obj)
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 returntrue
. - It is symmetric: for any non-null reference values
x
andy
,x.equals(y)
should returntrue
if and only ify.equals(x)
returnstrue
. - It is transitive: for any non-null reference values
x
,y
, andz
, ifx.equals(y)
returnstrue
andy.equals(z)
returnstrue
, thenx.equals(z)
should returntrue
. - It is consistent: for any non-null reference values
x
andy
, multiple invocations ofx.equals(y)
consistently returntrue
or consistently returnfalse
, provided no information used inequals
comparisons on the objects is modified. - For any non-null reference value
x
,x.equals(null)
should returnfalse
.
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 | |
---|---|
obj |
Object : This value may be null . |
Returns | |
---|---|
boolean |
true if this object is the same as the obj
argument; false otherwise. |
getAdvertisingSid
public int getAdvertisingSid ()
Returns the advertising set id. May return ScanResult#SID_NOT_PRESENT
if no set id
was is present.
Returns | |
---|---|
int |
getDataStatus
public int getDataStatus ()
Returns the data status. Can be one of ScanResult#DATA_COMPLETE
or DATA_TRUNCATED
.
Returns | |
---|---|
int |
getDevice
public BluetoothDevice getDevice ()
Returns the remote Bluetooth device identified by the Bluetooth device address. If the device
is bonded, calling BluetoothDevice#getAddress
on the object returned by this method
will return the address that was originally bonded with (either identity address or random
address).
Returns | |
---|---|
BluetoothDevice |
getPeriodicAdvertisingInterval
public int getPeriodicAdvertisingInterval ()
Returns the periodic advertising interval in units of 1.25ms. Valid range is 6 (7.5ms) to
65536 (81918.75ms). A value of ScanResult#PERIODIC_INTERVAL_NOT_PRESENT
means
periodic advertising interval is not present.
Returns | |
---|---|
int |
getPrimaryPhy
public int getPrimaryPhy ()
Returns the primary Physical Layer on which this advertisement was received. Can be one of
BluetoothDevice#PHY_LE_1M
or BluetoothDevice#PHY_LE_CODED
.
Returns | |
---|---|
int |
getRssi
public int getRssi ()
Returns the received signal strength in dBm. The valid range is [-127, 126].
Returns | |
---|---|
int |
getScanRecord
public ScanRecord getScanRecord ()
Returns the scan record, which is a combination of advertisement and scan response.
Returns | |
---|---|
ScanRecord |
This value may be null . |
getSecondaryPhy
public int getSecondaryPhy ()
Returns the secondary Physical Layer on which this advertisement was received. Can be one of
BluetoothDevice#PHY_LE_1M
, BluetoothDevice#PHY_LE_2M
, BluetoothDevice.PHY_LE_CODED
or ScanResult#PHY_UNUSED
- if the advertisement was not
received on a secondary physical channel.
Returns | |
---|---|
int |
getTimestampNanos
public long getTimestampNanos ()
Returns timestamp since boot when the scan record was observed.
Returns | |
---|---|
long |
getTxPower
public int getTxPower ()
Returns the transmit power in dBm. Valid range is [-127, 126]. A value of TX_POWER_NOT_PRESENT
indicates that the TX power is not present.
Returns | |
---|---|
int |
hashCode
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 inequals
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 thehashCode
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 thehashCode
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. |
isConnectable
public boolean isConnectable ()
Returns true if this object represents connectable scan result.
Returns | |
---|---|
boolean |
isLegacy
public boolean isLegacy ()
Returns true if this object represents legacy scan result. Legacy scan results do not contain advanced advertising information as specified in the Bluetooth Core Specification v5.
Returns | |
---|---|
boolean |
toString
public String toString ()
Returns a string representation of the object.
Returns | |
---|---|
String |
a string representation of the object. |
writeToParcel
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 |