蓝牙低能耗获取特性描述



我有一个蓝牙4.0传感器,它向我发送许多服务和特性,比如这个草案示例:

<service uuid="ServiceUUID" advertise="true">
  <description>Test Service</description>
     <characteristic uuid="CharacteristUUID" id="test_rate">
         <properties read="true" notify = "true"/>
            <value length="1" type="hex"></value>
            <description>Test Rate</description>
     </characteristic>
</service>

我从android示例BluetoothLEGatt开始,我想动态地获取特征描述名称,例如(Test Rate),因为在示例中,他们使用SampleGattAttributes类以编程方式获取描述。

有人知道这是怎么可能的吗?

谨致问候。

对于BluetoothGatt动态数据,您必须按照以下步骤创建回调方法

  1. 创建蓝牙设备的对象,设备地址将是连接后您将获得的地址

     BluetoothManager m = (BluetoothManager)context.getSystemService(Context.BLUETOOTH_SERVICE);
            m_adapter = m.getAdapter();
    BluetoothDevice device = m_adapter.getRemoteDevice(deviceAddress);
    
  2. 创建BluetoothGatt对象

        private BluetoothGatt m_gatt;
        m_gatt = m_device.connectGatt(m_context, false, m_callback);
    

    3.回调实现

      private final BluetoothGattCallback m_callback = new BluetoothGattCallback()
     {        public void onCharacteristicRead(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {
        String testid = characteristic.getDescriptor(characteristic.getUuid()).getCharacteristic().getStringValue(0);
    };
                    }
    

确保蓝牙权限和其他次要变量声明。

相关内容

  • 没有找到相关文章

最新更新