React Native Code Push 적용기(RN CodePush 설정)

모바일_코린이·2024년 7월 15일
0


앞서까지 글에서는 안드로이드와 아이폰 관련하여 CodePush 설정을 마쳤습니다.

이번에는 React Native 쪽 코드를 작성하므로서 React Native Code Push 적용기를 마쳐보려고 합니다.

  1. App.tsx를 아래와 같이 수정해줍니다.
    만약 코드푸시 설정을 넣지 않고 기본설정으로 하고 싶다면 Options 값은 넣어주지 않아도 됩니다.
    두번째 사진처럼 Options를 빼고 App를 감싸줍니다.

Code Push 옵션 설정

https://learn.microsoft.com/ko-kr/appcenter/distribution/codepush/rn-api-ref#javascript-api-reference

위의 공식문서에 기재되어 있는 옵션들에 대해서 설명해드리겠습니다.

checkFrequency

업데이트를 검사 시기를 지정합니다.
기본값 : CodePush.CheckFrequency.ON_APP_START

CodePush.CheckFrequency.ON_APP_START - 앱 프로세스가 시작될 때마다 업데이트를 검사 하려는 것을 나타냅니다.

CodePush.CheckFrequency.ON_APP_RESUME - "백그라운드"가 된 후 앱이 포그라운드로 돌아올 때마다 업데이트를 검사 하려는 것을 나타냅니다(사용자가 홈 단추를 누르고 앱이 별도의 결제 프로세스를 시작하는 등).

CodePush.CheckFrequency.MANUAL - 업데이트에 대한 자동 검사를 사용하지 않도록 설정하지만 앱 코드에서 가 호출된 경우에만 검사

installMode

업데이트 할 시기를 지정합니다.
기본값 : CodePush.InstallMode.ON_NEXT_RESTART

codePush.InstallMode.IMMEDIATE(0) - 업데이트를 설치하고 앱을 즉시 다시 시작하려고 했음을 나타냅니다.

codePush.InstallMode.ON_NEXT_RESTART(1) - 업데이트를 설치하려고 하지만 강제로 앱을 다시 시작하지 않음을 나타냅니다. OS 또는 최종 사용자로 인해 앱이 "자연스럽게" 다시 시작되면 업데이트가 원활하게 선택됩니다. 이 값은 자동 업데이트를 수행할 때 적합합니다.

codePush.InstallMode.ON_NEXT_RESUME(2) - 업데이트를 설치하려고 하지만 다음에 최종 사용자가 백그라운드에서 다시 시작할 때까지 앱을 다시 시작하지 않음을 나타냅니다.

codePush.InstallMode.ON_NEXT_SUSPEND(3) - 앱 일시 중단이 중요하지 않을 만큼 길지 않은 한 사용자 컨텍스트가 손실되지 않도록 백그라운드에 있는 동안 에만(기본적으로 0) 백그라운드 minimumBackgroundDuration 에서 업데이트를 설치하려고 했음을 나타냅니다.

필자의 경우에는 별다른 옵션을 적용하지 않고 기본설정을 사용하였습니다.

필자가 작성한 code push 코드입니다.

스플래시 화면에서 업데이트가 있는지 확인합니다.
만약 업데이트가 없다면 바로 다음화면으로 넘어가고
만약 업데이트가 있으면 해당 업데이트를 다운로드한 후
바로 앱을 재시작하는 로직으로 작성하였습니다.

사용자가 업데이트 과정을 볼 수 있게끔 percent도 시각적으로 표시해 줬습니다.

이상으로 길고도 길었던 리액트 네이티브 Code Push 적용기를 마무리하겠습니다. 감사합니다.

profile
안녕하세요 리액트 네이티브 개발자입니다.

3개의 댓글

comment-user-thumbnail
2024년 7월 31일

내년 3월에 코드푸쉬 섭종한다는데 혹시 대안같은게 있으실까요?

1개의 답글