반응형
[iOS/Swift] 앱 버전 / 빌드 버전 구하기
안녕하세요. 개발하는 정주입니다.
오늘은 앱의 버전과 빌드 버전을 구하는 방법에 대해 포스팅하려고 합니다.
앱 버전과 빌드 버전의 차이점은 이전 포스팅을 참고해 주세요.
바로 시작합니다.
앱 버전과 빌드버전 보기
앱 버전과 빌드 버전은 프로젝트 파일에서 확인할 수 있습니다.
프로젝트 파일의 General > Identity를 보면 앱 버전은 Version으로, 빌드 버전은 Build로 표시되어 있습니다.
이것을 코드로 구하는 방법은 뭘까요?
앱 버전 구하는 코드
if let value = Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String {
print(value)
}
info 정보를 가져오는 코드입니다. 그중에서 앱 버전은 CFBundleShortVersionString 값을 가져오면 됩니다.
앱 빌드 버전 구하는 코드
if let value = Bundle.main.infoDictionary?["CFBundleVersion"] as? String {
return value
}
비슷한 코드이나 앱 빌드 버전은 CFBundleVersion을 가져오면 됩니다.
Build 상속하여 사용하기
앱 정보와 빌드 정보를 여러 곳에서 구해야 한다면 위 코드를 매번 넣어주는 것보다 좋은 방법이 있습니다.
바로 Bundle을 상속하는 방법입니다.
상속 코드
import Foundation
extension Bundle {
// 앱 버전
class var appVersion: String {
if let value = self.main.infoDictionary?["CFBundleShortVersionString"] as? String {
return value
}
return ""
}
// 앱 빌드 버전
class var appBuildVersion: String {
if let value = self.main.infoDictionary?["CFBundleVersion"] as? String {
return value
}
return ""
}
}
참조 코드
print("Version: \(Bundle.appVersion) / Build Version: \(Bundle.appBuildVersion)")
앱 버전은 Bundle.appVersion으로, 빌드 버전은 Bundle.appBuildVersion으로 구하면 됩니다.
마무리 잡담
오늘은 앱 버전과 앱 빌드 버전을 구해봤습니다.
대부분의 앱에서 버전을 표시하는 만큼 기억해둬야할 정보 중 하나라고 생각합니다.
감사합니다!
아직은 초보 개발자입니다.
더 효율적인 코드 훈수 환영합니다!
공감과 댓글 부탁드립니다.
반응형