반응형
CoreLocation 프레임워크를 사용하여 지리적 좌표와 미터 단위의 반경을 사용하여 위치를 정의하고 사용자가 해당 위치에 들어가거나 나간 경우를 확인할 수 있습니다.
앱에서 위치 권한을 항상 허용으로 설정하면 앱이 종료된 상태에서도 확인이 가능합니다.(앱을 사용하는 동안 허용 으로 하면 앱이 실행 중인 경우에만 확인할 수 있습니다.)
https://www.adictosaltrabajo.com/2017/08/16/geofences-en-ios-swift/
https://github.com/DaniOtero/iOS-geofences
위의 예제는
let autentia = CLCircularRegion(center: CLLocationCoordinate2D(latitude: 40.453163, longitude: -3.509220), radius: 100, identifier: "autentia")
해당 위치를 정의하고 Toggle 버튼으로 Geofences 를 껏다 켤 수 있습니다.
Simulator로 실행 후 디바이스 위치를 해당 좌표(latitude: 40.453163, longitude: -3.509220)로 변경하면
func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
notify(msg: "Hello from Autentia")
}
위의 메소드가 호출 되어 노티가 오는 것을 확인할 수 있습니다.
Simulator 위치를 모니터링 하고 있는 좌표와 멀리 변경하면
func locationManager(_ manager: CLLocationManager, didExitRegion region: CLRegion) {
notify(msg: "Bye from Autentia")
}
위의 메소드가 호출 되어 노티가 오는 것을 확인할 수 있습니다.
모니터링 되는 지역은 한 앱당 20개이고 20개 초과 시 더이상 등록 되지 않습니다.
Simulator 좌표 변경 하는 방법
반응형
'# 02 > iOS' 카테고리의 다른 글
[iOS] 라이브러리 사용! (0) | 2022.10.26 |
---|---|
[iOS] Alamofire (0) | 2022.10.26 |
[iOS] URLSession (0) | 2022.10.26 |