我在android中创建了一个简单的服务来使用蓝牙BLE。当我尝试使用NRF连接应用程序进行测试时,它显示为“未知服务”。我想给出类似“速度服务”的名称。我会怎么做它?
答案 0 :(得分:1)
private BluetoothAdapter bluetoothAdapter = null;
bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
void ChangeDeviceName(){
Log.i(LOG, "localdevicename : "+bluetoothAdapter.getName()+" localdeviceAddress : "+bluetoothAdapter.getAddress());
bluetoothAdapter.setName("NewDeviceName");
Log.i(LOG, "localdevicename : "+bluetoothAdapter.getName()+" localdeviceAddress : "+bluetoothAdapter.getAddress());
}
参考:Change the Android bluetooth device name
希望这种情况与您相似并且有用。
答案 1 :(得分:0)
这是您正在使用的扫描应用程序控制的因素,不一定是您的Android Things设备。蓝牙LE不会通过无线方式发送类似“服务名称”的元数据。服务仅由其UUID标识。如果您的设备实施standard service UUIDs之一,则NRF Connect等扫描仪应用 可能 会识别并显示服务类型。
另一个例子是,我们的Bluetooth GATT Server示例通过使用Bluetooth SIG为该服务采用的UUID来实现标准当前时间服务。