我现在正在使用 estimote 的 ibeacon 标签,而且我是 iOS 编码的新手,同时我阅读了他们定制的 beaconmanager 和 beaconmanagerdelegate 类的实现。我发现“ESTBeaconManager”(http://estimote.github.io/iOS- SDK/Classes/ESTBeaconManager.html)符合“CLLocationManagerDelegate”,这是苹果的核心位置管理器委托。
但是,ESTBeaconManager 没有实现任何“CLLocationManagerDelegate”方法,而“ESTBeaconManager”类有自己的委托协议,称为“ESTBeaconManagerDelegate”,在这些协议中,许多与 中类似的方法在“ CLLocationManagerDelegate”,我们可以使用它们在 beconmanager 发现某些东西或被查询时触发一些事件。
所以,我的问题是,ESTBeaconManager 符合“CLLocationManagerDelegate”的意义何在,以及这之下的机制是什么,我们知道系统将触发“CLLocationManagerDelegate”中的方法,因为它们是由苹果制造的。但是“ESTBeaconManagerDelegate”中的自定义方法必须通过在自定义代码中调用它们来触发(可能通过CLLocationManagerDelegate,对吗?)。