본문 바로가기

# 02/iOS

[iOS] Geofence

반응형

CoreLocation 프레임워크를 사용하여 지리적 좌표와 미터 단위의 반경을 사용하여 위치를 정의하고 사용자가 해당 위치에 들어가거나 나간 경우를 확인할 수 있습니다.

 

앱에서 위치 권한을 항상 허용으로 설정하면 앱이 종료된 상태에서도 확인이 가능합니다.(앱을 사용하는 동안 허용 으로 하면 앱이 실행 중인 경우에만 확인할 수 있습니다.)

 

 


https://www.adictosaltrabajo.com/2017/08/16/geofences-en-ios-swift/

 

Geofences en iOS (Swift) - Adictos al trabajo

Tutorial en el que se explica cómo crear geofences en iOS. Índice de contenidos Introducción Entorno Pidiendo permiso para utilizar la ubicación Crear la geofence Probando su funcionamiento Conclusiones 1. Introducción Cuando hablamos de geofences nos

www.adictosaltrabajo.com

https://github.com/DaniOtero/iOS-geofences

 

GitHub - DaniOtero/iOS-geofences: iOS geofences sample

iOS geofences sample. Contribute to DaniOtero/iOS-geofences development by creating an account on GitHub.

github.com

 

 

위의 예제는

 

 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