안녕하세요,
이전에 보내주신 답변 감사드립니다. 추가로 몇 가지 확인하고자 다시 문의드립니다.
com.kakao.sdk.version 키가 SDK 업데이트에 따른 마이그레이션 용도로 사용된다는 설명을 받았습니다. 하지만, 말씀해주신 대로 앱을 재실행해도 해당 키가 UserDefaults에 생성되지 않는 상황이 계속 발생하고 있습니다.
이와 관련하여 몇 가지 사항을 확인 부탁드립니다:
마이그레이션 필요 여부 및 처리 방법
com.kakao.sdk.version 키가 생성되지 않으면, 만약 마이그레이션이 필요한 경우에도 SDK에서 자동으로 처리되는지, 혹은 직접적으로 저희가 확인하거나 처리해야 할 부분이 있는지 궁금합니다.
키가 생성되지 않는 상황이 SDK 동작에 미치는 영향
만약 해당 키가 UserDefaults에 복원되지 않는 경우, 현재 앱에서 Kakao SDK 기능(예: 토큰 갱신 및 만료 처리 등)에 문제가 발생할 가능성이 있는지 확인 부탁드립니다.
SDK 버전 관리 및 갱신 확인 방법
마지막으로, 앱에서 SDK 버전 정보가 없을 경우에도 Kakao SDK가 정상적으로 버전 관리를 수행하는지, 혹은 별도로 버전 갱신을 확인할 수 있는 방법이 있는지 알고 싶습니다.
위 사항들에 대해 설명해 주시면, 해당 이슈를 더 원활하게 해결하는 데 많은 도움이 될 것 같습니다.
@러브리캣0162 cc. @woody.ho
안녕하세요.
com.kakao.sdk.version 키와 키값은 kakao sdk v1-> v2 토큰 마이그레이션시 태깅을 위해 sdk 내부적으로만 사용하는 값들입니다.
모듈화로 인한 엑세스 때문에 부득이하게 public 으로 선언되어 있습니다.
마이그레이션을 위한 내부 로직이므로 공지없이 언제든 인터페이스가 바뀔수 있어 개발자분이 특정목적으로 사용을 하면 안됩니다.
해당 키&키값이 쓰여지는 케이스
sdk v1이 설치된 앱에서 v2로 sdk가 업그레이드 될때
앱 설치 후 최초 실행시
위의 케이스 일때 해당 SDK 버전이 셋팅됩니다.
마이그레이션 로직에서는 키값의 존재 유무만 체크하며 없을경우 최초 설치로 판단하여 다시 해당버전을 셋팅합니다.
아마 복구가 되지 않는다면, 해당 키값에 설치시 셋팅된 버전값이 아닌 다른값(?)이 존재할 가능성이 있어보입니다.
키값 자체는 사용하지 않고 키값의 존재유무만 체크하므로 마이그레이션 로직만 한번 더 타게됩니다.
그리고, 바로 위 답변처럼 다시 해당버전을 셋팅합니다.
개발자분은 마이그레이션을 신경쓰실 필요가 없습니다.
정상적으로 앱이 설치되었을 경우 키&키값이 생성되지 않을 가능성이 없고, 위에서 말씀드린대로 sdk v1 → v2 의 토큰 마이그레이션만을 위한 로직입니다.
sdk 버전은 KakaoSDK.shared.sdkVersion() 메소드로 확인 하실 수 있습니다.