BluetoothGattCharacteristic
public class BluetoothGattCharacteristic
extends Object
implements Parcelable
java.lang.Object | |
↳ | android.bluetooth.BluetoothGattCharacteristic |
代表蓝牙GATT特性
GATT特征是用于构建GATT服务的基本数据元素, BluetoothGattService
。 该特性包含一个值以及附加信息和可选的GATT描述符, BluetoothGattDescriptor
。
Summary
Constants |
|
---|---|
int |
FORMAT_FLOAT
特性值格式类型float(32位浮点型) |
int |
FORMAT_SFLOAT
特征值格式类型sfloat(16位浮点型) |
int |
FORMAT_SINT16
特征值格式类型sint16 |
int |
FORMAT_SINT32
特征值格式类型sint32 |
int |
FORMAT_SINT8
特征值格式类型sint8 |
int |
FORMAT_UINT16
特征值格式类型uint16 |
int |
FORMAT_UINT32
特征值格式类型uint32 |
int |
FORMAT_UINT8
特征值格式类型uint8 |
int |
PERMISSION_READ
特征读取权限 |
int |
PERMISSION_READ_ENCRYPTED
特征权限:允许加密的读取操作 |
int |
PERMISSION_READ_ENCRYPTED_MITM
特征许可:允许用中间人保护阅读 |
int |
PERMISSION_WRITE
特征写入权限 |
int |
PERMISSION_WRITE_ENCRYPTED
特征权限:允许加密写入 |
int |
PERMISSION_WRITE_ENCRYPTED_MITM
特性许可:允许使用中间保护进行加密写入 |
int |
PERMISSION_WRITE_SIGNED
特征权限:允许签名写入操作 |
int |
PERMISSION_WRITE_SIGNED_MITM
特性许可:允许使用中间人保护进行签名写入操作 |
int |
PROPERTY_BROADCAST
特点:特点是可播放的。 |
int |
PROPERTY_EXTENDED_PROPS
特性:特性具有扩展特性 |
int |
PROPERTY_INDICATE
特性:特性支持指示 |
int |
PROPERTY_NOTIFY
特性:特性支持通知 |
int |
PROPERTY_READ
特性:特性可读。 |
int |
PROPERTY_SIGNED_WRITE
特性:特性支持用签名书写 |
int |
PROPERTY_WRITE
特性:可以写入特性。 |
int |
PROPERTY_WRITE_NO_RESPONSE
特性:特性可以被写入而没有响应。 |
int |
WRITE_TYPE_DEFAULT
写入特征,请求远程设备确认 |
int |
WRITE_TYPE_NO_RESPONSE
Wrtite特性,而不需要远程设备的响应 |
int |
WRITE_TYPE_SIGNED
写入特征包括验证签名 |
Inherited constants |
---|
From interface android.os.Parcelable
|
Fields |
|
---|---|
public static final Creator<BluetoothGattCharacteristic> |
CREATOR |
protected List<BluetoothGattDescriptor> |
mDescriptors
描述符列表包含在此特性中。 |
Public constructors |
|
---|---|
BluetoothGattCharacteristic(UUID uuid, int properties, int permissions)
创建一个新的BluetoothGattCharacteristic。 |
Public methods |
|
---|---|
boolean |
addDescriptor(BluetoothGattDescriptor descriptor)
为此特性添加一个描述符。 |
BluetoothGattDescriptor |
getDescriptor(UUID uuid)
从此特征的描述符列表中返回具有给定UUID的描述符。 |
List<BluetoothGattDescriptor> |
getDescriptors()
返回此特征的描述符列表。 |
Float |
getFloatValue(int formatType, int offset)
返回此特性的存储值。 |
int |
getInstanceId()
返回此特性的实例ID。 |
Integer |
getIntValue(int formatType, int offset)
返回此特性的存储值。 |
int |
getPermissions()
返回此特性的权限。 |
int |
getProperties()
返回此特性的属性。 |
BluetoothGattService |
getService()
返回此特性所属的服务。 |
String |
getStringValue(int offset)
返回此特性的存储值。 |
UUID |
getUuid()
返回此特征的UUID |
byte[] |
getValue()
获取此特征的存储值。 |
int |
getWriteType()
获取此特征的写入类型。 |
boolean |
setValue(String value)
设置该特征的本地存储值。 |
boolean |
setValue(int value, int formatType, int offset)
设置该特征的本地存储值。 |
boolean |
setValue(byte[] value)
更新本特性的本地存储值。 |
boolean |
setValue(int mantissa, int exponent, int formatType, int offset)
设置该特征的本地存储值。 |
void |
setWriteType(int writeType)
为此特性设置写入类型 设置特征的写入类型决定了 |
void |
writeToParcel(Parcel out, int flags)
将此对象平铺到一个包裹中。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
|
From interface android.os.Parcelable
|
Constants
PERMISSION_READ_ENCRYPTED
int PERMISSION_READ_ENCRYPTED
特征权限:允许加密的读取操作
常量值:2(0x00000002)
PERMISSION_READ_ENCRYPTED_MITM
int PERMISSION_READ_ENCRYPTED_MITM
特征许可:允许用中间人保护阅读
常量值:4(0x00000004)
PERMISSION_WRITE_ENCRYPTED
int PERMISSION_WRITE_ENCRYPTED
特征权限:允许加密写入
常量值:32(0x00000020)
PERMISSION_WRITE_ENCRYPTED_MITM
int PERMISSION_WRITE_ENCRYPTED_MITM
特性许可:允许使用中间保护进行加密写入
常量值:64(0x00000040)
PERMISSION_WRITE_SIGNED
int PERMISSION_WRITE_SIGNED
特征权限:允许签名写入操作
常量值:128(0x00000080)
PERMISSION_WRITE_SIGNED_MITM
int PERMISSION_WRITE_SIGNED_MITM
特性许可:允许使用中间人保护进行签名写入操作
常量值:256(0x00000100)
PROPERTY_EXTENDED_PROPS
int PROPERTY_EXTENDED_PROPS
特性:特性具有扩展特性
常量值:128(0x00000080)
PROPERTY_SIGNED_WRITE
int PROPERTY_SIGNED_WRITE
特性:特性支持用签名书写
常量值:64(0x00000040)
PROPERTY_WRITE_NO_RESPONSE
int PROPERTY_WRITE_NO_RESPONSE
特性:特性可以被写入而没有响应。
常量值:4(0x00000004)
WRITE_TYPE_NO_RESPONSE
int WRITE_TYPE_NO_RESPONSE
Wrtite特性,而不需要远程设备的响应
常数值:1(0x00000001)
Fields
Public constructors
BluetoothGattCharacteristic
BluetoothGattCharacteristic (UUID uuid, int properties, int permissions)
创建一个新的BluetoothGattCharacteristic。
需要 BLUETOOTH
权限。
Parameters | |
---|---|
uuid |
UUID : The UUID for this characteristic |
properties |
int : Properties of this characteristic |
permissions |
int : Permissions for this characteristic |
Public methods
addDescriptor
boolean addDescriptor (BluetoothGattDescriptor descriptor)
为此特性添加一个描述符。
需要 BLUETOOTH
权限。
Parameters | |
---|---|
descriptor |
BluetoothGattDescriptor : Descriptor to be added to this characteristic. |
Returns | |
---|---|
boolean |
true, if the descriptor was added to the characteristic |
getDescriptor
BluetoothGattDescriptor getDescriptor (UUID uuid)
从此特征的描述符列表中返回具有给定UUID的描述符。
Parameters | |
---|---|
uuid |
UUID |
Returns | |
---|---|
BluetoothGattDescriptor |
GATT descriptor object or null if no descriptor with the given UUID was found. |
getDescriptors
List<BluetoothGattDescriptor> getDescriptors ()
返回此特征的描述符列表。
Returns | |
---|---|
List<BluetoothGattDescriptor> |
Descriptors for this characteristic |
getFloatValue
Float getFloatValue (int formatType, int offset)
返回此特性的存储值。
有关详细信息,请参阅 getValue()
。
Parameters | |
---|---|
formatType |
int : The format type used to interpret the characteristic value. |
offset |
int : Offset at which the float value can be found. |
Returns | |
---|---|
Float |
Cached value of the characteristic at a given offset or null if the requested offset exceeds the value size. |
getInstanceId
int getInstanceId ()
返回此特性的实例ID。
如果远程设备使用相同的UUID提供多个特征,则使用实例ID来消除特征之间的差异。
Returns | |
---|---|
int |
Instance ID of this characteristic |
getIntValue
Integer getIntValue (int formatType, int offset)
返回此特性的存储值。
formatType参数确定如何解释特征值。 例如,将FORMAT_UINT16
设置为FORMAT_UINT16
指定给定偏移量处特征值的前两个字节被解释为生成返回值。
Parameters | |
---|---|
formatType |
int : The format type used to interpret the characteristic value. |
offset |
int : Offset at which the integer value can be found. |
Returns | |
---|---|
Integer |
Cached value of the characteristic or null of offset exceeds value size. |
getPermissions
int getPermissions ()
返回此特性的权限。
Returns | |
---|---|
int |
Permissions of this characteristic |
getProperties
int getProperties ()
返回此特性的属性。
这些属性包含属性标志的位掩码,指示此特征的特征。
Returns | |
---|---|
int |
Properties of this characteristic |
getService
BluetoothGattService getService ()
返回此特性所属的服务。
Returns | |
---|---|
BluetoothGattService |
The asscociated service |
getStringValue
String getStringValue (int offset)
返回此特性的存储值。
有关详细信息,请参阅 getValue()
。
Parameters | |
---|---|
offset |
int : Offset at which the string value can be found. |
Returns | |
---|---|
String |
Cached value of the characteristic |
getValue
byte[] getValue ()
获取此特征的存储值。
此函数返回通过调用readCharacteristic(BluetoothGattCharacteristic)
检索到的此特性的存储值。 特性的高速缓存值由于读取特征操作或接收到特征更新通知而更新。
Returns | |
---|---|
byte[] |
Cached value of the characteristic |
getWriteType
int getWriteType ()
获取此特征的写入类型。
Returns | |
---|---|
int |
Write type for this characteristic |
setValue
boolean setValue (String value)
设置该特征的本地存储值。
有关详细信息,请参阅 setValue(byte[])
。
Parameters | |
---|---|
value |
String : New value for this characteristic |
Returns | |
---|---|
boolean |
true if the locally stored value has been set |
setValue
boolean setValue (int value, int formatType, int offset)
设置该特征的本地存储值。
详情请参阅 setValue(byte[])
。
Parameters | |
---|---|
value |
int : New value for this characteristic |
formatType |
int : Integer format type used to transform the value parameter |
offset |
int : Offset at which the value should be placed |
Returns | |
---|---|
boolean |
true if the locally stored value has been set |
setValue
boolean setValue (byte[] value)
更新本特性的本地存储值。
此功能修改本地存储的此特性的缓存值。 要将值发送到远程设备,请致电writeCharacteristic(BluetoothGattCharacteristic)
将值发送到远程设备。
Parameters | |
---|---|
value |
byte : New value for this characteristic |
Returns | |
---|---|
boolean |
true if the locally stored value has been set, false if the requested value could not be stored locally. |
setValue
boolean setValue (int mantissa, int exponent, int formatType, int offset)
设置该特征的本地存储值。
详情请参阅 setValue(byte[])
。
Parameters | |
---|---|
mantissa |
int : Mantissa for this characteristic |
exponent |
int : exponent value for this characteristic |
formatType |
int : Float format type used to transform the value parameter |
offset |
int : Offset at which the value should be placed |
Returns | |
---|---|
boolean |
true if the locally stored value has been set |
setWriteType
void setWriteType (int writeType)
为此特性设置写入类型
设置特征的写入类型决定了 writeCharacteristic(BluetoothGattCharacteristic)
函数如何写入该特征。
Parameters | |
---|---|
writeType |
int : The write type to for this characteristic. Can be one of: WRITE_TYPE_DEFAULT , WRITE_TYPE_NO_RESPONSE or WRITE_TYPE_SIGNED . |
writeToParcel
void writeToParcel (Parcel out, int flags)
将此对象平铺到一个包裹中。
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_WRITE_RETURN_VALUE . |