iBeacon协议澄清

我想了解更多关于新的苹果iBeacon协议,以及如何适用于其他设备。

我已经看到协议本身已经被逆向工程:这是个好消息,但是我还有一些疑问关于协议。

该协议devise为允许自定义文本消息发送到接收方客户端? 如“欢迎来到我的店”而不是靠近某个灯塔?

我可以看到很多其他的问题,但是我对将该文本(如Hex)注入协议的位置有点困惑。

什么是iBeacon蓝牙configuration文件

使用BlueZ堆栈作为外设(广告客户)

它看起来像协议设置为只有真正广播UUID和主要/次要集的信标,然后客户端应用程序需要做的事情。 但我希望它能更多地反映一个自定义的消息,如“进入一个免费的咖啡”或类似的东西…是可能使用iBeacon协议,还是我需要只使用标准的蓝牙LE?

标准的iBeacons不能,除了三部分标识符(UUID,Major,Minor)和发射机功率校准值之外,不能传输任何信息。 你不能让他们传送一个自定义的文字信息。

您可以按照您的build议使用较低级别的蓝牙LE,但无论哪种方式,您都必须构build一个定制应用程序,以识别来自任一types信标的信号。 而且由于你必须有一个自定义的应用程序,你可以很容易地处理映射标识符到文本消息。 喜欢这个:

iBeacon identifiers (UUID Major Minor) Text Message ---------------------------------------- ------------------------ 2F234454-CF6D-4A0F-ADF2-F4911BA9FFA6 1 1 welcome to my shop 2F234454-CF6D-4A0F-ADF2-F4911BA9FFA6 1 2 welcome to my other shop 

你如何创build一个查找表? 有很多方法。 您可以使用Objective C switch语句或更复杂的NSDictionary在应用程序中对其进行硬编码。 您可以使用本地Web服务进行查找,也可以使用现成的Web服务将键/值对映射到iBeacons,如我公司的Proximity Kit 。