머리말
문제 발생
오류 상황
설정 화면에서 최선 버전을 체크할 때, 최신 버전임에도 업데이트 하기라는 UILabel이 뜨는 문제가 발생했다.
iOS 앱스토어 버전 체크와 Git Flow
긴급한 HOTFIX 브랜치 분기
아래와 같이 HOTFIX
브랜치를 만들었다. 앱 개발 하면서 처음으로 HOTFIX를 써 보았다.
* HOTFIX/check-appstore-version
develop
(END)
URL 요청 테스트 및 수정
문제) 번들 아이디에 대문자가 포함될 경우
버전이 아직도 1.0
인 것을 알 수 있다... (도대체 왜...🥲)
해결-1) 번들 아이디의 대문자를 소문자로 변경할 경우
번들 아이디를 소문자로 바꾸면
해결-2) 번들 아이디가 아닌 애플 아이디로 변경할 경우
코드에서 URL 수정 (번들 아이디 및 애플 아이디)
enum Constants {
enum LinkUrl {
enum AppInfo {
static let itunesBundleID = "https://itunes.apple.com/lookup?bundleId=com.andyarchive.oneotwo&country=kr"
static let itunesAppID = "https://itunes.apple.com/lookup?id=6470292190&country=kr"
}
}
}
1. bundleID=
에서 OneOTwo
를 oneotwo
로 수정하였다.
2. id=
에서는 쿼리로 country까지 추가하여 version이 나오도록 수정하였다.
URLSession 관련 메서드 수정
위의 수정한 url를 반영하였다
private func isLatestAppVersion(completion: @escaping (Bool) -> Void) {
let urlString = Constants.LinkUrl.AppInfo.itunesAppID
guard let url = URL(string: urlString) else {
completion(false)
return
}
URLSession.shared.dataTask(with: url) { data, response, error in
DispatchQueue.main.async {
//...
}
로컬 앱 버전과 앱 스토어의 버전 확인 및 비교
Git Branch merge (GitHub Pull Requests)
GitHub의 PR을 통해 HOTFIX 브랜치를 develop 브랜치로 merge 했다
#58 (설정 화면) 대소문자에 의해 요청한 앱스토어 버전 문자열이 업데이트 되지 않는 문제 수정
앱스토어 커넥트 심사 제출 (버전 1.1.1)
아카이빙 후 앱스토어에 업로드하여 1.1.1로 제출하였다 :)
꼬리말
GitHub 링크
Issues
#57 설정 화면에서 앱 최신 버전의 여부가 적절하지 않는 오류 발생 (url 대소문자)
Pull Requests
#58 (설정 화면) 대소문자에 의해 요청한 앱스토어 버전 문자열이 업데이트 되지 않는 문제 수정
수정일: 2024-01-02 화
댓글