创建自定义CLRegions以进行监视

时间:2016-11-01 13:48:24

标签: ios swift core-location geofencing clregion

我正在构建一个使用地理围栏的应用,但我意识到CLRegion有很多限制,例如:

  • 位置authorizationStatus必须是.authorizedAlways才能进行区域监控。

  • 只能监控圆形区域

这限制了可以使用区域监视应用的功能。然而,在做了一些研究之后,我发现有一些方法可以通过创建自定义CLRegion类来改变这种行为。

说实话,我不知道该怎么做或从哪里开始。有没有人对这样的自定义CLRegion类如何允许自定义地理围栏有任何建议?

有一个关于appcoda的教程简要地谈到了这个,但它根本没有深入,你可以在这里找到它:

https://www.appcoda.com/geo-targeting-ios/

他们建议从以下协议开始:

protocol RegionProtocol {
   var coordinate: CLLocation {get}
   var radius: CLLocationDistance {get}
   var identifier: String {get}

   func updateRegion()
}

protocol RegionDelegateProtocol {
   func didEnterRegion()
   func didExitRegion()
}

从这些可以为CLRegions创建自定义功能,例如监视多边形等。

如何开始实施自定义区域?

谢谢!

0 个答案:

没有答案