본문 바로가기
플러터

앱 버전 업데이트 관리 - Firebase Remote Config 에 대해

by s2jinny 2025. 1. 4.

츄즈미 어플리케이션 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  끝.