츄즈미 어플리케이션 Firebase Remote Config 을 정리하겠습니다.
먼저, 앱 배포할 때 (aos/ios) console에 각각 빌드를 해고 업로드 하고 2~3일 기다려야 앱 업데이트가 가능하다.
하지만 자주 바뀌는 문구, 서버에는 적용되지 않는 사소한 문구들을 바꿀 때 번거롭다.
이러한 문제를 찾아보다가 !! Firebase Remote Config 이라는 아주 매우 좋은 것이 있다는 사실을 알고, 배포 없이 어플을 업데이트가 가능하다고 한다 !!!
앱 버전에 많이 넣는다 하여 먼저 앱 버전 체크할 때 넣어봤습니다.
기존에는 앱 버전 라이브러리를 사용하여 앱 버전 체크를 해주었는데요, 이젠 "Remote Config" 을 사용해볼게용 ㅎㅎ
셋팅은 아주 간단했습니다.
1. 먼저 파이어베이스 remote config를 설정합니다. (연결은 당욘히 해야겟쬬)
저는 이런식으로 했어요.
최근 버전(latest_version), 최소 버전(min_version), 업데이트된 중요한 공지사항 텍스트(update_text)
제가 할거는 현재 버전을 가져와서 최근 버전과 최소 버전을 비교한 후 각각 다른 다이어로그를 뿌려준다 !
일단 현재 버전을 가져와야해요.
PackageInfo packageInfo = await PackageInfo.fromPlatform();
String version = packageInfo.version;
이렇게 현재 버전을 쉽게 알 수 있어요. 그리고 나서
await remoteConfig.setConfigSettings(
RemoteConfigSettings(
fetchTimeout: const Duration(seconds: 10),
minimumFetchInterval: const Duration(hours: 1),
),
);
await remoteConfig.fetchAndActivate();
String updateText = remoteConfig.getString('update_text');
String minVersion = remoteConfig.getString('min_version');
String latestVersion = remoteConfig.getString('latest_version');
//String latestVersion = "2.5.0";
Version currentVersion = Version.parse(version);
Version minVer = Version.parse(minVersion);
Version latestVer = Version.parse(latestVersion);
리모트 컨피그들을 셋팅, 선언 해줍니다. 저는 일단 최소는 2.4.1 버전이상만 되면 되고, 최근 버전은 2.4.10으로 해줬어요.
비교할 때는 pub_semver 라이브러리로 버전 비교를 해줬습니다.
if (currentVersion < minVer) {
// 최소 버전보다 낮은 경우 강제로 업데이트
_showUpdateDialog(context, minVersion, updateText, isForced: true);
} else if (currentVersion < latestVer) {
// 최신 버전보다 낮은 경우 업데이트 유도
_showUpdateDialog(context, latestVersion, updateText, isForced: false);
} else {
// 버전이 최신인 경우
context.read<ConnectStateBloc>().add(
const ConnectStateEvent.checkConnect(),
);
}
}
최소(내가 설정했던 2.4.1) 보다 낮으면 필수적인 업데이트 다이어로그가 나오고요,
최신(내가 설정했던 2.4.10)보다 낮으면 필요적인 업데이트 다이어로그가 나오게 했습니다.
그게 아니라면 그냥 앱 바로 실행되도록 했어요.
이렇게 두가지로 가능합니다. 업데이트 누르면 각각 playstore , appstore로 이동 시키면 돼요.
중요한 점은 배포(콘솔을 거치지 않고) 를 하지 않고, 버전(숫자)만 바꾸어서 중요한 업데이트 문구를 알릴 수 있어요.
저는 텍스트도 Remote Config 의 파라미터 update_text에 넣어 문구도 파이어베이스를 통해 바꿀 수 있도록 했습니다.
너무 좋은 Firebase Remote Config 이죠?? .. 파베야 없애지말아라 이 좋은거 .. ♡
Firebase Remote Config 끝.
'플러터' 카테고리의 다른 글
ios 인앱 결제 구현 - Flutter (4) | 2025.03.24 |
---|---|
앱링크를 이용해 카카오톡 초대하기, 공유하기 기능 (1) | 2024.10.15 |
프로젝트 어플 만들면서 겪었던 경험들 (2) | 2024.08.05 |
Postman - 토큰 자동 저장 방법 (0) | 2024.06.28 |
Pagination 페이지네이션이란 (0) | 2024.06.28 |