gpt4 book ai didi

ios - 如何通过中央 didDiscoverPeripheral 方法每次读取大量(28 个字符)蓝牙 LE 外设名称 key 广告数据?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:41:45 25 4
gpt4 key购买 nike

如何发送28个字节的外设name-key广告数据并被central接收?

通常情况下,使用UUID,外设名称 key 广告数据中只有8个字符的空间。

但是有一个技巧:
我发现如果我的名字键有 28 个字符,中央广告数据是空的,但是所有 28 个字符都在中央的 didDiscoverPeripheral 的 peripherl.name 变量中出现了一次。但是下一次中央扫描相同的设备时,它得到的是“iPad”的 GATT 值(因为我的中央和外围设备在两个 iPad mini 上。)

苹果文档。说它通常发送 GATT,但我观察到它总是发送一次 28 个字符的名称。

背景:我想将标识数据放入外围设备的广告数据中,以避免读取值交换。原因是设备之间的通信交换最短,以节省时间和电池。

我试过关闭扫描然后重新打开,然后停止并重新启动广告。同样的问题。

最佳答案

不幸的是,这是行不通的。连接后,CoreBluetooth 会读取设备名称特征,稍后它将用作外围设备的名称。您设置的名称唯一会始终出现的地方是广告数据:

(lldb)po advertisementData

{
kCBAdvDataChannel = 37;
kCBAdvDataIsConnectable = 1;
kCBAdvDataLocalName = MyPeripheral;
kCBAdvDataServiceUUIDs = (
"Unknown (<e20a39f4 73f54bc4 a12f17d1 ad07a961>)"
);
}

无法以任何方式在 iOS 设备中访问设备名称特征。

关于ios - 如何通过中央 didDiscoverPeripheral 方法每次读取大量(28 个字符)蓝牙 LE 外设名称 key 广告数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17909095/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com