我开发的iOS应用程序使用startMonitoring(for:region)方法通过didEnterRegion和didExitRegion委托方法检测区域进入和退出事件。 区域监控工作了多年,最近停止工作了。
剩下信标(我的应用程序使用这些相同的信标多年)。现在我正在使用多个应用程序来确保信标正在广告正确的 iBeacon 信号,例如 Beacon Scope、BT Inspector、LightBlue,而且似乎所有信标都仅处于 iBeacon 模式,它们广告 UUID、主要、次要,他们只说 iBeacon 格式。我没有更新beacon固件
现在苹果技术支持说
我的问题
谢谢你
一些提示:
为了消除您正在测试的硬件信标的问题,请使用现成的信标发射器(例如适用于 iOS 或 Android 的 BeaconScope)来宣传 iBeacon。您的应用程序是否会在不同时运行其他应用程序的情况下选择它?如果是这样,这表明您的硬件信标有问题。
您可以使用适用于 Android 的 Nordic NRF Connect 应用程序来查看硬件信标正在广播的确切字节,并使用它来扫描您的信标。如果您发布它读取的字节,我们也许可以说更多。
ADV_NONCONN_IND 只是广告中的一个标志字段,按照 Apple 支持人员的说法工作。在任何平台上检测 iBeacon 都不需要扫描响应,因此我非常怀疑这就是问题所在。但如果确实如此,上述测试将有助于查明这一点。
Apple iBeacon 规范是专有的,Apple 仅与在 Apple 注册并与其签署保密协议的人员共享。幸运的是,逆向工程非常简单,这正是我在苹果生气并让我的前老板删除我的博客文章之前所做的:http://www.davidgyoungtech.com/2013/10/01/reverse -工程-ibeacon-profile
如果你真的想要一本书,我合着了这本书。虽然已经过去好几年了,但情况并没有太大改变。