为什么ESTBeaconManager符合CLLocationManagerDelegate

时间:2014-09-26 19:24:30

标签: ios objective-c ibeacon estimote

我现在正在使用estimote的ibeacon标签,我是iOS编码的新手,同时我阅读了他们定制的beaconmanager和beaconmanagerdelegate类的实现。我发​​现" ESTBeaconManager"( http://estimote.github.io/iOS-SDK/Classes/ESTBeaconManager.html)符合" CLLocationManagerDelegate&#34 ;,这是苹果公司的核心位置管理员代表。

然而,ESTBeaconManager并没有实现任何" CLLocationManagerDelegate"方法,而" ESTBeaconManager" class有自己的委托协议叫做#34; ESTBeaconManagerDelegate",在这些协议中有很多类似于那些的方法在" CLLocationManagerDelegate"中声明,我们可以用它们来触发一些当beconmanager找到一些东西或被扯掉时的事件。

所以,我的问题是,ESTBeaconManager符合" CLLocationManagerDelegate"的重点是什么,以及在此基础上的机制是什么,我们知道系统将触发" CLLocationManagerDelegate"因为它们是由苹果制成的。但是" ESTBeaconManagerDelegate"中的定制方法;必须通过在自定义代码中调用它们来触发(可能通过CLLocationManagerDelegate,是吗?)。

1 个答案:

答案 0 :(得分:1)

Estimote SDK部分基于Apple的Core Location API,为其测距和信标区域监控功能提供支持。 SDK构建于此之上以添加一些其他功能,例如过滤掉“未知状态”信标(avoidUnknownStateBeacons)的选项或将多个区域的测距结果合并为单个didRangeBeaconsInRegion回调({ {1}})等它还增加了与Estimote Cloud的集成,例如从云下载其他信标属性(如returnAllRangedBeaconsAtOnce)。

总而言之,符合color的{​​{1}}是一个实现细节,您无需担心它会使用SDK。