본문 바로가기
PROGRAMMING CODE/SWIFT

[KakaoMapSDK_ver2 iOS] 2.10.x 업데이트 엔진 발전, 버전 설정 팁

by daye_ 2024. 4. 26.

 

 

지도 개발시 SDK를 사용하다 보니,

업데이트에 따라 코드가 엄청나게 바뀐다.3달만에 x.2.x가 업데이트 되다 보니까 Package 버전 설정시 신중하게 해야할 것 같다.참고로 0.1 업데이트때 마다 엄청 크게 변화하니, 버전은 upToNextMinor로 설정하는것 추천!

 

 

분명 처리 할 일 중 엔진 핸들링이 필요하다고 생각 한 부분이 있었는데,

지도에서 다른 탭으로 화면을 옮겼을 때 엔진처리가 확연히 달라졌다.

 

당시 패치노트에 별 내용이 없어서 위의 내용을 추측할 수 밖에 없었는데,회고 중 궁금해서 2.10.x 버전 확인하니 카카오 측에서 확실히 엔진이 불편하다는 것을 인지하고 있었던것같다!

 

 

func updateUIView(_ uiView: KMViewContainer, context: Self.Context) {
        if draw {
            DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
                context.coordinator.controller?.startEngine()
                context.coordinator.controller?.startRendering()
            }
        }
        else {
            context.coordinator.controller?.stopRendering()
            context.coordinator.controller?.stopEngine()
        }
    }

이것은 2.9.x의 공식 문서 코드이고,

func updateUIView(_ uiView: KMViewContainer, context: Self.Context) {
        if draw {
            context.coordinator.controller?.activateEngine()
        }
        else {
            context.coordinator.controller?.resetEngine()
        }
    }

아래는 2.10.x의 공식문서 코드이다. 

확실히 직관적이고 불필요한 코드를 정리한것같다!

 

다음에 지도 쓸 일이 있으면 아주 좋을것같다 ~,~