BluetoothGattService
public
class
BluetoothGattService
extends Object
implements
Parcelable
java.lang.Object | |
↳ | android.bluetooth.BluetoothGattService |
Represents a Bluetooth GATT Service
Gatt Service contains a collection of BluetoothGattCharacteristic
, as well as
referenced services.
Summary
Constants | |
---|---|
int |
SERVICE_TYPE_PRIMARY
Primary service |
int |
SERVICE_TYPE_SECONDARY
Secondary service (included by primary services) |
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Creator<BluetoothGattService> |
CREATOR
|
protected
List<BluetoothGattCharacteristic> |
mCharacteristics
List of characteristics included in this service. |
protected
List<BluetoothGattService> |
mIncludedServices
List of included services for this service. |
Public constructors | |
---|---|
BluetoothGattService(UUID uuid, int serviceType)
Create a new BluetoothGattService. |
Public methods | |
---|---|
boolean
|
addCharacteristic(BluetoothGattCharacteristic characteristic)
Add a characteristic to this service. |
boolean
|
addService(BluetoothGattService service)
Add an included service to this service. |
BluetoothGattCharacteristic
|
getCharacteristic(UUID uuid)
Returns a characteristic with a given UUID out of the list of characteristics offered by this service. |
List<BluetoothGattCharacteristic>
|
getCharacteristics()
Returns a list of characteristics included in this service. |
List<BluetoothGattService>
|
getIncludedServices()
Get the list of included GATT services for this service. |
int
|
getInstanceId()
Returns the instance ID for this service If a remote device offers multiple services with the same UUID (ex. |
int
|
getType()
Get the type of this service (primary/secondary) |
UUID
|
getUuid()
Returns the UUID of this service |
void
|
writeToParcel(Parcel out, int flags)
Flatten this object in to a Parcel. |
Inherited methods | |
---|---|
Constants
SERVICE_TYPE_PRIMARY
public static final int SERVICE_TYPE_PRIMARY
Primary service
Constant Value: 0 (0x00000000)
SERVICE_TYPE_SECONDARY
public static final int SERVICE_TYPE_SECONDARY
Secondary service (included by primary services)
Constant Value: 1 (0x00000001)
Fields
mCharacteristics
protected List<BluetoothGattCharacteristic> mCharacteristics
List of characteristics included in this service.
mIncludedServices
protected List<BluetoothGattService> mIncludedServices
List of included services for this service.
Public constructors
BluetoothGattService
public BluetoothGattService (UUID uuid, int serviceType)
Create a new BluetoothGattService.
Parameters | |
---|---|
uuid |
UUID : The UUID for this service |
serviceType |
int : The type of this service, SERVICE_TYPE_PRIMARY or SERVICE_TYPE_SECONDARY |
Public methods
addCharacteristic
public boolean addCharacteristic (BluetoothGattCharacteristic characteristic)
Add a characteristic to this service.
For apps targeting Build.VERSION_CODES#R
or lower, this requires the Manifest.permission#BLUETOOTH
permission which can be gained with a simple <uses-permission>
manifest tag.
Parameters | |
---|---|
characteristic |
BluetoothGattCharacteristic : The characteristics to be added |
Returns | |
---|---|
boolean |
true, if the characteristic was added to the service |
addService
public boolean addService (BluetoothGattService service)
Add an included service to this service.
For apps targeting Build.VERSION_CODES#R
or lower, this requires the Manifest.permission#BLUETOOTH
permission which can be gained with a simple <uses-permission>
manifest tag.
Parameters | |
---|---|
service |
BluetoothGattService : The service to be added |
Returns | |
---|---|
boolean |
true, if the included service was added to the service |
getCharacteristic
public BluetoothGattCharacteristic getCharacteristic (UUID uuid)
Returns a characteristic with a given UUID out of the list of characteristics offered by this service.
This is a convenience function to allow access to a given characteristic without
enumerating over the list returned by getCharacteristics()
manually.
If a remote service offers multiple characteristics with the same UUID, the first instance of a characteristic with the given UUID is returned.
Parameters | |
---|---|
uuid |
UUID |
Returns | |
---|---|
BluetoothGattCharacteristic |
GATT characteristic object or null if no characteristic with the given UUID was found. |
getCharacteristics
public List<BluetoothGattCharacteristic> getCharacteristics ()
Returns a list of characteristics included in this service.
Returns | |
---|---|
List<BluetoothGattCharacteristic> |
Characteristics included in this service |
getIncludedServices
public List<BluetoothGattService> getIncludedServices ()
Get the list of included GATT services for this service.
Returns | |
---|---|
List<BluetoothGattService> |
List of included services or empty list if no included services were discovered. |
getInstanceId
public int getInstanceId ()
Returns the instance ID for this service
If a remote device offers multiple services with the same UUID (ex. multiple battery services for different batteries), the instance ID is used to distuinguish services.
Returns | |
---|---|
int |
Instance ID of this service |
getType
public int getType ()
Get the type of this service (primary/secondary)
Returns | |
---|---|
int |
getUuid
public UUID getUuid ()
Returns the UUID of this service
Returns | |
---|---|
UUID |
UUID of this service |
writeToParcel
public void writeToParcel (Parcel out, int flags)
Flatten this object in to a Parcel.
Parameters | |
---|---|
out |
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 |