본문 바로가기

Flutter-플러터/플러터 공부

Flutter 앱 버전 체크해서 알람 만들기

반응형

 

 

문제 해결 목적

 

 

앱 업데이트 완료 후 유저들에게 현재 기기의 버전과, 스토어에 있는 버전을 체크 후 알람띄우기

 

 

문제 해결 과정 

 

https://pub.dev/packages/app_version_update/example

 

app_version_update example | Flutter package

An easy and quick way to check if the local app is updated with the same version in their respective stores (Play Store / Apple Store ).

pub.dev

 

위 패키지를 사용했습니다. 

같은 기능의 다른 패키지도 있지만 패키지 버전 관리가 꾸준 한 것 같아 안정성을 위해 사용했습니다. 

 

사용법은 간단합니다. 

 

첫 페이지에 init 함수 안에 

아래 함수를 붙여 줍니다. 위에 패키지 내용을 보면 바텀 시트 안내도 있습니다. 여러가지 커스텀이 가능 한 것 같습니다~!!!

 

 void verifyVersion(BuildContext context) async {
    await AppVersionUpdate.checkForUpdates(
      appleId: dotenv.env['APPLE_APP_ID'].toString(),
      playStoreId: dotenv.env['PLAY_STORE_ID'].toString(),
      country: 'kr',
    ).then((result) async {
      if (result.canUpdate!) {
        print('업데이트 가능: $result'); // 업데이트 가능한 경우 메시지 출력
        await AppVersionUpdate.showAlertUpdate(
            appVersionResult: result,
            context: context,
            backgroundColor: Colors.grey[200],
            title: '사장님,새로운 업데이트가 있어요!',
            titleTextStyle: const TextStyle(
                color: Colors.black, fontWeight: FontWeight.w600, fontSize: 16),
            content: '일기월장은 사장님의 성공을 위해 최선을 다하겠습니다!',
            contentTextStyle: const TextStyle(
                color: Colors.black, fontWeight: FontWeight.w400, fontSize: 16),
            updateButtonText: '업데이트',
            cancelButtonText: '취소',
            cancelTextStyle: TextStyle(color: Colors.black),
            cancelButtonStyle: ButtonStyle(
              backgroundColor: MaterialStatePropertyAll(Colors.white12),
            ));
      } else {
        print('업데이트 불가: $result'); // 업데이트 불가능한 경우 메시지 출력
      }
    });
  }

 

 

결과

 

 

현재 앱스토어의 버전과 시뮬레이터 안에 버전이 다른 것을 인식해서 아래와 같이 알람이 잘 뜹니다!

 

 

 

728x90
반응형