仅发送一个iBeacon数据包

时间:2014-10-14 09:55:05

标签: ios ibeacon

是否可以只发送1个iBeacon数据包?我尝试过使用CBPeripheralManager,但由于只有2种方法可以启动和停止广告,所以我无法控制正在广播的数据包数量。

我想要尝试的是使用iBeacon数据包作为命令,而不仅仅是广播一些ID。所以我可以发送1个iBeacon数据包,如果接收者得到消息,它可以用另一个iBeacon数据包发送回确认消息。目的是避免蓝牙配对发送非常简单的数据。该信息将链接到数据包的UUID,主要和次要。

或者有比使用iBeacon更好的方法。

2 个答案:

答案 0 :(得分:0)

不,你不能,因为iBeacon是单向设备

答案 1 :(得分:0)

是的,您可以使用iBeacon技术在两个iOS设备之间来回发送信息而无需配对。如果您有两个设备,即设备A和设备B,则将它们设置为具有公共ProximityUUID的信标的范围,例如,E2C56DB5-DFFB-48D2-B060-D0F5A71096E0。然后,您可以在两个字节的主要和次要字段中交换信息。

你不能做的事情控制发射机足以只发送一个iBeacon广告。 iOS中的发送器每秒发送10个广告包,因此您可以做的最好是启动发送器,然后在大约100ms之后将其停在计时器上。 (您可能不应该这样做,因为无法保证其他设备将成功接收单个iBeacon广告数据包 - 由于无线电噪声中的CRC错误,它可能会丢失。您可能最好放弃数据包继续传输,直到您可以从其他设备的响应中确认它已被接收。)

您可以在我的回答here.

中看到在计时器上启动和停止发射器的示例

当然,通过内置的蓝牙数据交换机制,可能会有更简单,更强大的方法来实现您的需求。但这并没有改变你提出的建议当然是可能的事实。