ジオフェンシングを使用するアプリを構築していますが、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 のカスタム機能を作成できます。
カスタム領域の実装を開始するにはどうすればよいですか?
ありがとう!