ARCHIVES

태그

신고하기

상단 메뉴 페이지

기본 콘텐츠로 건너뛰기

[iOS] 구글 맵(Google Map) 적용


안녕하세요 치우 입니다. 

오늘은 프로젝트에 구글맵을 추가 해보겠습니다.

순서를 생각해보면 다음과 같습니다. 


1. 구글 파이어베이스 에서 프로젝트를 생성 합니다.
    https://console.firebase.google.com



2. 구글 콘솔에 들어가서 맵 사용을 활성화 합니다.
    https://developers.google.com/maps/gmp-get-started?hl=ko



3. 결제정보를 설정하고 접속 키를 받습니다.

이제 프로젝트로 와서.. 

  # Google API

  pod 'GoogleMaps', '~> 4.0.0'

  pod 'GooglePlaces', '~> 4.0.0'

  pod 'Google-Maps-iOS-Utils', '~> 3.4.2'

  

  # Google Firebase

  pod 'Firebase/Crashlytics', '~> 7.2.0'

  pod 'Firebase/Analytics', '~> 7.2.0'

pod install 하고, 키를 설정 합니다.

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {


        // 구글지도 사용 키 - 운영

        GMSServices.provideAPIKey("받은 키 등록")

        GMSPlacesClient.provideAPIKey("받은 키 등록")


        // GA 기본설정

        FirebaseApp.configure()

        

        // 임시로 화면 점프

        // AppNavigator.shared.root(to: AppProvider.main, with: window)

        

        return true

    }


이제 지도뷰를 생성하고, 연결하면 완료 

    override func viewDidLoad() {

        super.viewDidLoad()


        let camera = GMSCameraPosition.camera(withLatitude: 38.57, longitude: 127.27, zoom: 6.0)

        mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)

        self.containerView.insertSubview(self.mapView, at: 0)

        

        self.mapView.translatesAutoresizingMaskIntoConstraints = false

        let widAnk = self.mapView.heightAnchor.constraint(equalTo: self.containerView.heightAnchor, multiplier: 1.0)

        let heiAnk = self.mapView.widthAnchor.constraint(equalTo: self.containerView.widthAnchor, multiplier: 1.0)

        let cenXAnk = self.mapView.centerXAnchor.constraint(equalTo: self.containerView.centerXAnchor)

        let cenYAnk = self.mapView.centerYAnchor.constraint(equalTo: self.containerView.centerYAnchor)

        NSLayoutConstraint.activate([widAnk, heiAnk, cenXAnk, cenYAnk])

    }



이제 지도를 다뤄 봅시다.




댓글