RN/expo) EAS UPDATE 사용 방법(OTA)

김명성·2022년 12월 1일
1

Expo Application Service의 update 기능

EAS update는 앱스토어에 등록된 어플리케이션에 긴급하게 수정해야 될 부분이 생겼을 때 필요한 부분만 빠르게 업데이트 할 수 있게 만들어주는 기능입니다.

eas submit을 사용하여 배포하여도 충분히 빠르게 퍼블리싱 되지만, update를 사용한다면
build - submit - 구글의 검토 단계를 스킵할 수 있어 5~10분 이내로 빠르게 변경할 수 있었습니다.

EAS UPDATE 사용 방법

EAS UPDATE를 사용하기 위해서는 eas.json에 몇가지 설정이 필요합니다.

{
  "cli": {
    "version": ">= 2.6.0"
  },
  "build": {
    "development": {
      "channel": "development",
      "developmentClient": true,
      "distribution": "internal",
    },
    "preview": {
      "channel": "staging",
      "distribution": "internal",
      "android": {
        "buildType": "apk"
      },
      "ios": {
        "simulator": true
      }
    }
    "production": {
      "channel": "production",
    }
  },
  "submit": {
    "production": {
      "android": {
        "serviceAccountKeyPath":"./pc-api-10045-945-3ifk233rfdb.json",
        "track":"internal"
      },
      "ios": {
        "bundleIdentifier": "co.kr.tongsindoctor",
        "appleId": "apple",
        "ascAppId": "332452554",
        "appleTeamId": "99DP48"
      }
    }
  }
}

build.production / build.development 등 eas.json에는 각 build에 channel값을 입력할 수 있습니다.
채널명과 브렌치명이 같을 시 추가 설정 없이 기본값으로 연결되어 있습니다.

업데이트를 만들고 publish하는 방법

터미널에 아래와 같이 명령어를 입력하면 쉽게 업데이트 할 수 있습니다.

eas update --branch branchName --message "write your message..."

명령어를 입력하면 dist 폴더가 생성 된 뒤 변경된 내용이 작성되고, branch에 변경된 내용이 적용되고, branch와 chennel이 연결되어 있기에 빠르게 변경사항이 적용됩니다.


주의점
UPDATE로 변경되지 않는 부분이 존재합니다. 푸시 알람이나 권한 획득 같은 몇가지 경우가 존재하는데, 이럴때는 리빌드가 필요합니다

0개의 댓글