Notice
Recent Posts
Recent Comments
Link
투케이2K
74. (ios/swift) ios 파이어베이스 리모트 서비스 (firebase remote config) 사용해 앱 최신 버전 관리 실시 본문
IOS
74. (ios/swift) ios 파이어베이스 리모트 서비스 (firebase remote config) 사용해 앱 최신 버전 관리 실시
투케이2K 2021. 12. 7. 14:59[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT
[소스 코드]
// MARK: - [파이어베이스 앱 최신 버전 확인 실시]
func checkUpdateMobileVersion(){
print("")
print("===============================")
print("[AppDelegate >> checkUpdateMobileVersion]")
print("설명 :: 파이어베이스 리모트 앱 최신 버전 체크 수행")
print("===============================")
print("")
// [사전 필요 사항]
/*
1. 파이어베이스 ios 프로젝트 생성
2. 파이어베이스 콘솔 사이트 Remote Config 메뉴에서 >> app_version_ios [key] 생성 필요
3. ios 앱 내부 파이어베이스 적용 필요 사항 :
- 파이어베이스 연동 라이브러리 설치 진행 (메시지, 애널리스틱, 코어, 리모트)
- 파이어베이스 프로젝트 생성 시 저장한 GoogleService-Info 파일 앱 내부에 적용 필요
4. 파이어베이스 참고 사이트 :
- https://firebase.google.com/docs/remote-config/get-started?platform=ios&hl=ko
5. 호출 로직 : AppDelegate 에서 초기 application (didFinishLaunchingWithOptions) 상태에서 호출 실시
*/
// [파이어베이스 config 초기화 수행]
let fireBaseConfigFile = Bundle.main.path(forResource: "GoogleService-Info", ofType: "plist")!
let firOptions = FirebaseOptions(contentsOfFile: fireBaseConfigFile)!
FirebaseApp.configure(options: firOptions)
// [파이어베이스에 등록된 remote key 정의]
let key = "app_version_ios"
let value = "0.0"
// [파이어베이스 리모트 객체 생성 실시]
var remoteConfig = RemoteConfig.remoteConfig()
var settings = RemoteConfigSettings()
settings.minimumFetchInterval = 0
remoteConfig.configSettings = settings
// [해당 키값이 없을 경우 디폴트 값 삽입]
let defaultDic: NSDictionary = ["\(key)":"\(value)"]
remoteConfig.setDefaults(defaultDic as! [String : NSObject])
// [최신 앱 버전 확인 이벤트 리스너 수행 실시]
remoteConfig.fetch { (status, error) -> Void in
if status == .success {
remoteConfig.activate { changed, error in
print("")
print("===============================")
print("[AppDelegate >> checkUpdateMobileVersion]")
print("설명 :: 파이어베이스 리모트 앱 최신 버전 체크 성공")
print("version :: \(remoteConfig.configValue(forKey: "\(key)").stringValue ?? "")")
print("===============================")
print("")
}
}
else {
print("")
print("===============================")
print("[AppDelegate >> checkUpdateMobileVersion]")
print("설명 :: 파이어베이스 리모트 앱 최신 버전 체크 에러")
print("error :: \(error?.localizedDescription)")
print("===============================")
print("")
}
}
}
[결과 출력]
반응형
'IOS' 카테고리의 다른 글
76. (ios/swift) url scheme 스키마 외부 앱 실행 및 앱 스토어 이동 실시 - canOpenURL always true and false 해결 (2) | 2021.12.12 |
---|---|
75. (ios/swift) 라벨 멀티 라인 설정 방법 (label multi line) - 스토리보드 (0) | 2021.12.09 |
73. (ios/swift) 원형 로딩 프로그레스 (progress) 생성 실시 - UIActivityIndicatorView (0) | 2021.12.07 |
72. (ios/swift) assets 앱 런처 아이콘 삽입 방법 참고 사이트 (0) | 2021.12.06 |
71. (ios/swift) 버튼 button 텍스트 색상 변경 및 배경 이미지 삽입 방법 (0) | 2021.12.06 |
Comments