diff --git a/Whidy-iOS/Core/Utils/LocationManager.swift b/Whidy-iOS/Core/Utils/LocationManager.swift index 5565689..6da357d 100644 --- a/Whidy-iOS/Core/Utils/LocationManager.swift +++ b/Whidy-iOS/Core/Utils/LocationManager.swift @@ -27,12 +27,19 @@ final class LocationManager: NSObject, CLLocationManagerDelegate { return locationManager } + // 위도 및 경도 반환 함수 + func getCoordinates() -> (latitude: Double?, longitude: Double?) { + return (latitude, longitude) + } + // CLLocationManagerDelegate 메서드 func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { guard let location = locations.last else { return } latitude = location.coordinate.latitude longitude = location.coordinate.longitude altitude = location.altitude + + Logger.debug("getCoordinates() - latitude: \(latitude ?? 0.0), longitude: \(longitude ?? 0.0)") } func locationManager(_ manager: CLLocationManager, didFailWithError error: Error) { diff --git a/Whidy-iOS/Core/Utils/NaverMapManager.swift b/Whidy-iOS/Core/Utils/NaverMapManager.swift index 16fd01a..533b061 100644 --- a/Whidy-iOS/Core/Utils/NaverMapManager.swift +++ b/Whidy-iOS/Core/Utils/NaverMapManager.swift @@ -10,7 +10,7 @@ import NMapsMap final class NaverMapManager : NSObject, ObservableObject, NMFMapViewCameraDelegate, NMFMapViewTouchDelegate, CLLocationManagerDelegate { static let shared = NaverMapManager() - private let locationManager = LocationManager.shared.getManager() + private let locationManager = LocationManager.shared let view = NMFNaverMapView(frame: .zero) @Published var coord: (Double, Double) = (0.0, 0.0) @@ -38,10 +38,10 @@ final class NaverMapManager : NSObject, ObservableObject, NMFMapViewCameraDelega // MARK: - 위치 정보 동의 확인 func checkLocationAuthorization() { - switch locationManager.authorizationStatus { + switch locationManager.getManager().authorizationStatus { case .notDetermined: Logger.debug("notDetermined") - locationManager.requestWhenInUseAuthorization() + locationManager.getManager().requestWhenInUseAuthorization() case .restricted: Logger.debug("위치 정보 접근이 제한되었습니다.") case .denied: @@ -49,8 +49,8 @@ final class NaverMapManager : NSObject, ObservableObject, NMFMapViewCameraDelega case .authorizedAlways, .authorizedWhenInUse: Logger.debug("Success") - coord = (Double(locationManager.location?.coordinate.latitude ?? 0.0), Double(locationManager.location?.coordinate.longitude ?? 0.0)) - userLocation = (Double(locationManager.location?.coordinate.latitude ?? 0.0), Double(locationManager.location?.coordinate.longitude ?? 0.0)) + coord = (locationManager.getCoordinates().latitude ?? 0.0, locationManager.getCoordinates().longitude ?? 0.0) + userLocation = (locationManager.getCoordinates().latitude ?? 0.0, locationManager.getCoordinates().longitude ?? 0.0) fetchUserLocation() @@ -72,7 +72,7 @@ final class NaverMapManager : NSObject, ObservableObject, NMFMapViewCameraDelega } private func fetchUserLocation() { - if let lat = locationManager.location?.coordinate.latitude, let lng = locationManager.location?.coordinate.longitude { + if let lat = locationManager.getCoordinates().latitude, let lng = locationManager.getCoordinates().longitude { Logger.debug("fetchUserLocation Success ✅") let cameraUpdate = NMFCameraUpdate(scrollTo: NMGLatLng(lat: lat, lng: lng), zoomTo: 15) cameraUpdate.animation = .easeIn