Expo SDK 버전 확인 및 업그레이드 방법

임기준·2025년 5월 23일
0

1. Expo SDK 버전 확인 방법

가장 확실하게 프로젝트의 Expo SDK 버전을 확인하는 방법은 프로젝트의 package.json 파일을 확인하는 것입니다.

  1. package.json 파일 열기: 프로젝트 루트 디렉토리에 있는 package.json 파일을 텍스트 편집기나 IDE로 엽니다.

  2. dependencies 섹션 확인: dependencies 섹션에서 "expo" 키를 찾습니다. 해당 값에 명시된 버전이 현재 프로젝트에서 사용 중인 Expo SDK 버전입니다.

{
  "name": "my-expo-app",
  "version": "1.0.0",
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "android": "expo run:android",
    "ios": "expo run:ios",
    "web": "expo start --web"
  },
  "dependencies": {
    "expo": "~50.0.14", // 이 부분이 Expo SDK 버전입니다.
    "react": "18.2.0",
    "react-native": "0.73.6",
    // ... 기타 종속성
  },
  // ...
}

위 예시에서는 Expo SDK 버전이 ~50.0.14임을 알 수 있습니다.

참고:

  • expo --version 명령어는 전역적으로 설치된 Expo CLI의 버전을 보여줍니다. 이것은 프로젝트의 SDK 버전과는 다를 수 있습니다.
  • npm show expo version 명령어는 expo 패키지의 최신 안정 버전을 보여줍니다. 이것 또한 현재 프로젝트에서 사용 중인 SDK 버전과 다를 수 있습니다.

2. Expo SDK 업그레이드 방법

Expo SDK를 업그레이드하는 가장 권장되는 방법은 공식 문서에서 제공하는 npx expo upgrade 명령어를 사용하는 것입니다.

업그레이드 전 중요 사항:

  • 한 번에 한 버전씩 업그레이드: Expo는 일반적으로 한 번에 한 SDK 버전씩 업그레이드하는 것을 권장합니다. 예를 들어, SDK 49에서 51로 바로 가는 것보다 49 -> 50 -> 51 순서로 업그레이드하는 것이 오류를 줄일 수 있습니다. 각 버전별 변경 사항이 많기 때문입니다.
  • 릴리스 노트 확인: 각 SDK 버전의 릴리스 노트(Release Notes)를 반드시 확인하여 주요 변경 사항, deprecation(더 이상 사용되지 않음), 또는 새로운 기능 등을 숙지해야 합니다. 이는 업그레이드 후 발생할 수 있는 문제를 미리 예측하고 해결하는 데 도움이 됩니다.
  • 개발 빌드 사용 권장: 프로덕션 앱의 경우 Expo Go 대신 개발 빌드(development build)를 사용하여 업그레이드를 테스트하는 것이 좋습니다.

업그레이드 절차:

  1. Expo CLI 업데이트: 먼저 Expo CLI를 최신 버전으로 업데이트합니다.
npm install -g expo-cli # 전역 설치된 expo-cli가 있다면
# 또는
npm install -g eas-cli # EAS CLI를 사용하는 경우

최신 Expo 프로젝트에서는 npx expo 명령어를 사용하므로, expo-cli를 전역으로 설치하지 않아도 됩니다. 하지만 혹시 모를 경우를 대비하여 확인하는 것도 좋습니다.

  1. 프로젝트 디렉토리로 이동: 업그레이드할 Expo 프로젝트의 루트 디렉토리로 이동합니다.
cd your-expo-project
  1. npx expo upgrade 실행: 프로젝트 내에서 다음 명령어를 실행합니다.
npx expo upgrade

이 명령어는 현재 프로젝트의 SDK 버전을 확인하고, 최신 SDK 버전으로 업그레이드할지 묻습니다. 프롬프트에 따라 진행하면 됩니다. 특정 버전으로 업그레이드하고 싶다면, 예를 들어 SDK 50으로 업그레이드하려면 다음과 같이 할 수 있습니다.

npx expo install expo@^50.0.0

이후 다음 명령어를 실행하여 종속성을 수정합니다.

npx expo install --fix
  1. android 및 ios 폴더 삭제 (필요시): 만약 이전 SDK 버전에서 expo prebuild를 통해 android 또는 ios 폴더를 생성했다면, 이를 삭제하는 것이 좋습니다. npx expo upgrade 또는 npx expo prebuild를 다시 실행할 때 새로운 SDK 버전에 맞춰 이 폴더들이 재생성됩니다.
rm -rf android ios
  1. expo prebuild 재실행 (필요시): 네이티브 빌드가 필요한 경우, 또는 android / ios 폴더를 삭제했다면 다시 생성해야 합니다.
npx expo prebuild
  1. 종속성 재설치:
npm install # 또는 yarn install
  1. expo doctor 실행 (선택 사항): expo doctor는 프로젝트의 일반적인 문제를 진단하고 종속성 호환성을 확인하는 데 도움을 줍니다.
npx expo doctor

문제가 발견되면 해결 방법을 제시해 줍니다. -fix 옵션을 사용하여 자동으로 해결을 시도할 수도 있습니다.

npx expo doctor --fix
  1. 테스트: 업그레이드 후에는 반드시 앱을 철저히 테스트하여 모든 기능이 정상적으로 작동하는지 확인해야 합니다.

요약하자면,

  • 버전 확인: package.json 파일의 dependencies 섹션에서 "expo" 키의 값을 확인합니다.
  • 업그레이드: npx expo upgrade 명령어를 사용하고, 필요한 경우 android, ios 폴더를 삭제 후 npx expo prebuild를 다시 실행합니다. 릴리스 노트를 확인하고 단계별로 업그레이드하는 것이 중요합니다.
profile
openerzone

0개의 댓글