我现在正在使用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,是吗?)。
答案 0 :(得分:1)
Estimote SDK部分基于Apple的Core Location API,为其测距和信标区域监控功能提供支持。 SDK构建于此之上以添加一些其他功能,例如过滤掉“未知状态”信标(avoidUnknownStateBeacons
)的选项或将多个区域的测距结果合并为单个didRangeBeaconsInRegion
回调({ {1}})等它还增加了与Estimote Cloud的集成,例如从云下载其他信标属性(如returnAllRangedBeaconsAtOnce
)。
总而言之,符合color
的{{1}}是一个实现细节,您无需担心它会使用SDK。