你会如何给android中的蓝牙服务命名?

时间:2017-06-05 18:09:02

标签: java android bluetooth-lowenergy android-things

我在android中创建了一个简单的服务来使用蓝牙BLE。当我尝试使用NRF连接应用程序进行测试时,它显示为“未知服务”。我想给出类似“速度服务”的名称。我会怎么做它?

2 个答案:

答案 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来实现标准当前时间服务