我正在用BLE协议在nRF52840和安卓智能手机之间开发一个帧交换序列。
由nRF52840公开的服务具有以下16位UUID : EB7A
在我的Android应用程序中,如果我只想检索具有此服务的BLE设备,我需要像这样初始化过滤器:
private var scanFilters: List<ScanFilter> = arrayListOf(
ScanFilter.Builder().setServiceUuid(ParcelUuid(UUID.fromString("0000eb7a-0000-1000-8000-00805f9b34fb"))
)但是,如果我想编写有关此服务的特性,则必须使用以下UUID:
0000eb7a-0000-0000-0000-000000000000我不明白为什么我不能使用与读写操作相同的UUID进行过滤,你能帮我吗?
发布于 2022-09-19 13:40:16
我不知道你是否搞清楚了。如果是的话,知道你发现了什么会很有趣。我本人对android和nRF开发还很陌生,但对于您的问题,我有两个理论:
如果您正在使用特定于供应商的UUID作为筛选器,我猜您无法修改它,这就是为什么您必须使用不同的UUID。例如,newScanFilter.Builder().setServiceUuid(UUID.fromString(SOME_SERVICE);
https://stackoverflow.com/questions/65797085
复制相似问题