Skip to content

Most visited

Recently visited

navigation

ScanSettings

public final class ScanSettings
extends Object implements Parcelable

java.lang.Object
   ↳ android.bluetooth.le.ScanSettings


Bluetooth LE scan settings are passed to startScan(ScanCallback) to define the parameters for the scan.

Summary

Nested classes

class ScanSettings.Builder

Builder for ScanSettings

Constants

int CALLBACK_TYPE_ALL_MATCHES

Trigger a callback for every Bluetooth advertisement found that matches the filter criteria.

int CALLBACK_TYPE_FIRST_MATCH

A result callback is only triggered for the first advertisement packet received that matches the filter criteria.

int CALLBACK_TYPE_MATCH_LOST

Receive a callback when advertisements are no longer received from a device that has been previously reported by a first match callback.

int MATCH_MODE_AGGRESSIVE

In Aggressive mode, hw will determine a match sooner even with feeble signal strength and few number of sightings/match in a duration.

int MATCH_MODE_STICKY

For sticky mode, higher threshold of signal strength and sightings is required before reporting by hw

int MATCH_NUM_FEW_ADVERTISEMENT

Match few advertisement per filter, depends on current capability and availibility of the resources in hw

int MATCH_NUM_MAX_ADVERTISEMENT

Match as many advertisement per filter as hw could allow, depends on current capability and availibility of the resources in hw

int MATCH_NUM_ONE_ADVERTISEMENT

Match one advertisement per filter

int PHY_LE_ALL_SUPPORTED

Use all supported PHYs for scanning.

int SCAN_MODE_BALANCED

Perform Bluetooth LE scan in balanced power mode.

int SCAN_MODE_LOW_LATENCY

Scan using highest duty cycle.

int SCAN_MODE_LOW_POWER

Perform Bluetooth LE scan in low power mode.

int SCAN_MODE_OPPORTUNISTIC

A special Bluetooth LE scan mode.

Inherited constants

From interface android.os.Parcelable

Fields

public static final Creator<ScanSettings> CREATOR

Public methods

int describeContents()

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

int getCallbackType()
boolean getLegacy()

Returns whether only legacy advertisements will be returned.

int getPhy()

Returns the physical layer used during a scan.

long getReportDelayMillis()

Returns report delay timestamp based on the device clock.

int getScanMode()
int getScanResultType()
void writeToParcel(Parcel dest, int flags)

Flatten this object in to a Parcel.

Inherited methods

From class java.lang.Object
From interface android.os.Parcelable

Constants

CALLBACK_TYPE_ALL_MATCHES

added in API level 21
int CALLBACK_TYPE_ALL_MATCHES

Trigger a callback for every Bluetooth advertisement found that matches the filter criteria. If no filter is active, all advertisement packets are reported.

Constant Value: 1 (0x00000001)

CALLBACK_TYPE_FIRST_MATCH

added in API level 23
int CALLBACK_TYPE_FIRST_MATCH

A result callback is only triggered for the first advertisement packet received that matches the filter criteria.

Constant Value: 2 (0x00000002)

CALLBACK_TYPE_MATCH_LOST

added in API level 23
int CALLBACK_TYPE_MATCH_LOST

Receive a callback when advertisements are no longer received from a device that has been previously reported by a first match callback.

Constant Value: 4 (0x00000004)

MATCH_MODE_AGGRESSIVE

added in API level 23
int MATCH_MODE_AGGRESSIVE

In Aggressive mode, hw will determine a match sooner even with feeble signal strength and few number of sightings/match in a duration.

Constant Value: 1 (0x00000001)

MATCH_MODE_STICKY

added in API level 23
int MATCH_MODE_STICKY

For sticky mode, higher threshold of signal strength and sightings is required before reporting by hw

Constant Value: 2 (0x00000002)

MATCH_NUM_FEW_ADVERTISEMENT

added in API level 23
int MATCH_NUM_FEW_ADVERTISEMENT

Match few advertisement per filter, depends on current capability and availibility of the resources in hw

Constant Value: 2 (0x00000002)

MATCH_NUM_MAX_ADVERTISEMENT

added in API level 23
int MATCH_NUM_MAX_ADVERTISEMENT

Match as many advertisement per filter as hw could allow, depends on current capability and availibility of the resources in hw

Constant Value: 3 (0x00000003)

MATCH_NUM_ONE_ADVERTISEMENT

added in API level 23
int MATCH_NUM_ONE_ADVERTISEMENT

Match one advertisement per filter

Constant Value: 1 (0x00000001)

PHY_LE_ALL_SUPPORTED

added in API level 26
int PHY_LE_ALL_SUPPORTED

Use all supported PHYs for scanning. This will check the controller capabilities, and start the scan on 1Mbit and LE Coded PHYs if supported, or on the 1Mbit PHY only.

Constant Value: 255 (0x000000ff)

SCAN_MODE_BALANCED

added in API level 21
int SCAN_MODE_BALANCED

Perform Bluetooth LE scan in balanced power mode. Scan results are returned at a rate that provides a good trade-off between scan frequency and power consumption.

Constant Value: 1 (0x00000001)

SCAN_MODE_LOW_LATENCY

added in API level 21
int SCAN_MODE_LOW_LATENCY

Scan using highest duty cycle. It's recommended to only use this mode when the application is running in the foreground.

Constant Value: 2 (0x00000002)

SCAN_MODE_LOW_POWER

added in API level 21
int SCAN_MODE_LOW_POWER

Perform Bluetooth LE scan in low power mode. This is the default scan mode as it consumes the least power.

Constant Value: 0 (0x00000000)

SCAN_MODE_OPPORTUNISTIC

added in API level 23
int SCAN_MODE_OPPORTUNISTIC

A special Bluetooth LE scan mode. Applications using this scan mode will passively listen for other scan results without starting BLE scans themselves.

Constant Value: -1 (0xffffffff)

Fields

CREATOR

added in API level 21
Creator<ScanSettings> CREATOR

Public methods

describeContents

added in API level 21
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(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.

getCallbackType

added in API level 21
int getCallbackType ()

Returns
int

getLegacy

added in API level 26
boolean getLegacy ()

Returns whether only legacy advertisements will be returned. Legacy advertisements include advertisements as specified by the Bluetooth core specification 4.2 and below.

Returns
boolean

getPhy

added in API level 26
int getPhy ()

Returns the physical layer used during a scan.

Returns
int

getReportDelayMillis

added in API level 21
long getReportDelayMillis ()

Returns report delay timestamp based on the device clock.

Returns
long

getScanMode

added in API level 21
int getScanMode ()

Returns
int

getScanResultType

added in API level 21
int getScanResultType ()

Returns
int

writeToParcel

added in API level 21
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.

flags int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience.
(Sep 2017 survey)