public static final class ScanFilter.Builder
extends java.lang.Object
ScanFilter
.Constructor and Description |
---|
ScanFilter.Builder() |
Modifier and Type | Method and Description |
---|---|
ScanFilter |
build()
Build
ScanFilter . |
ScanFilter.Builder |
setDeviceAddress(java.lang.String deviceAddress)
Set filter on device address.
|
ScanFilter.Builder |
setDeviceName(java.lang.String deviceName)
Set filter on device name.
|
ScanFilter.Builder |
setManufacturerData(int manufacturerId,
byte[] manufacturerData)
Set filter on on manufacturerData.
|
ScanFilter.Builder |
setManufacturerData(int manufacturerId,
byte[] manufacturerData,
byte[] manufacturerDataMask)
Set filter on partial manufacture data.
|
ScanFilter.Builder |
setServiceData(android.os.ParcelUuid serviceDataUuid,
byte[] serviceData)
Set filtering on service data.
|
ScanFilter.Builder |
setServiceData(android.os.ParcelUuid serviceDataUuid,
byte[] serviceData,
byte[] serviceDataMask)
Set partial filter on service data.
|
ScanFilter.Builder |
setServiceUuid(android.os.ParcelUuid serviceUuid)
Set filter on service uuid.
|
ScanFilter.Builder |
setServiceUuid(android.os.ParcelUuid serviceUuid,
android.os.ParcelUuid uuidMask)
Set filter on partial service uuid.
|
public ScanFilter.Builder setDeviceName(java.lang.String deviceName)
public ScanFilter.Builder setDeviceAddress(java.lang.String deviceAddress)
deviceAddress
- The device Bluetooth address for the filter. It needs to be in the
format of "01:02:03:AB:CD:EF". The device address can be validated using
BluetoothAdapter.checkBluetoothAddress(java.lang.String)
.java.lang.IllegalArgumentException
- If the deviceAddress
is invalid.public ScanFilter.Builder setServiceUuid(android.os.ParcelUuid serviceUuid)
public ScanFilter.Builder setServiceUuid(android.os.ParcelUuid serviceUuid, android.os.ParcelUuid uuidMask)
uuidMask
is the bit mask for the
serviceUuid
. Set any bit in the mask to 1 to indicate a match is needed for the
bit in serviceUuid
, and 0 to ignore that bit.java.lang.IllegalArgumentException
- If serviceUuid
is null
but
uuidMask
is not null
.public ScanFilter.Builder setServiceData(android.os.ParcelUuid serviceDataUuid, byte[] serviceData)
java.lang.IllegalArgumentException
- If serviceDataUuid
is null.public ScanFilter.Builder setServiceData(android.os.ParcelUuid serviceDataUuid, byte[] serviceData, byte[] serviceDataMask)
The serviceDataMask
must have the same length of the serviceData
.
java.lang.IllegalArgumentException
- If serviceDataUuid
is null or
serviceDataMask
is null
while serviceData
is not or
serviceDataMask
and serviceData
has different length.public ScanFilter.Builder setManufacturerData(int manufacturerId, byte[] manufacturerData)
Note the first two bytes of the manufacturerData
is the manufacturerId.
java.lang.IllegalArgumentException
- If the manufacturerId
is invalid.public ScanFilter.Builder setManufacturerData(int manufacturerId, byte[] manufacturerData, byte[] manufacturerDataMask)
The manufacturerDataMask
must have the same length of manufacturerData
.
java.lang.IllegalArgumentException
- If the manufacturerId
is invalid, or
manufacturerData
is null while manufacturerDataMask
is not,
or manufacturerData
and manufacturerDataMask
have different
length.public ScanFilter build()
ScanFilter
.java.lang.IllegalArgumentException
- If the filter cannot be built.