android-BluetoothDevice始终在getName()上返回null

我在Android 4.4、5和6中始终遇到此问题.

我正在执行BLE蓝牙设备扫描,然后可以访问它们的地址(getAddress())和其他数据.但是,如果我调用device.getName(),则每次都会返回null.

该文档没有帮助,它只说如果“有问题”,则返回null:https://developer.android.com/reference/android/bluetooth/BluetoothDevice.html#getName()

我未成功访问的其他帖子:

https://code.google.com/p/android/issues/detail?id=34411

android BluetoothDevice.getName() return null

ble device bluetoothdevice.getname() returns null

PS:我在Android API级别21中使用了不建议使用的方法,因此与该问题无关.

关于这里可能出什么问题的任何想法吗?

解决方法:

可能是您的BLE设备没有广播名称.广播有效载荷限制为31个字节,某些制造商省略了名称以节省空间.

上一篇:Bluetooth打开流程


下一篇:Android BLE:将ScanResult timestampNanos转换为System nanoTime