# Print output for @column tags ?> BluetoothGattService - Android SDK | Android Developers

Most visited

Recently visited

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

CREATOR

public static final Creator<BluetoothGattService> CREATOR

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.

Requires Manifest.permission.BLUETOOTH permission.

Parameters
uuid UUID: The UUID for this service

serviceType int: The type of this service, BluetoothGattService#SERVICE_TYPE_PRIMARY or BluetoothGattService#SERVICE_TYPE_SECONDARY

Public methods

addCharacteristic

public boolean addCharacteristic (BluetoothGattCharacteristic characteristic)

Add a characteristic to this service.

Requires Manifest.permission.BLUETOOTH permission.

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.

Requires Manifest.permission.BLUETOOTH permission.

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.

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