태그
목차

환경 설정하기

생성일: 2024-06-06

수정일: 2024-06-06

여기서는 Android Studio와 Xcode로 프로젝트를 실행할 수 있도록 환경을 설정하는 방법을 알아본다.

이를 통해 Android 에뮬레이터와 iOS 시뮬레이터로 개발하고, 앱을 로컬에서 빌드하는 등의 작업을 할 수 있다.

Note

이 가이드에는 Android Studio 또는 Xcode가 필요하다.

이미 설치되어 있다면, 빠르게 실행 환경을 갖출 수 있다. 설치되어 있지 않다면 설치 및 설정에 약 1시간 정도 소요될 것으로 예상된다.

환경 설정은 필수인가?

프레임워크를 사용하는 경우에는 환경 설정은 필수가 아니다.

React Native 프레임워크를 사용하면 프레임워크가 네이티브 앱 빌드를 처리하므로 Android Studio나 XCode를 따로 설정할 필요가 없다.

하지만 프레임워크 사용이 어려운 제약 조건이 있거나, 자체 프레임워크를 직접 작성하고 싶다면 로컬 환경 설정이 필요하다.

Android

종속성 설치하기

Node & Watchman

Homebrew 설치 후 터미널에서 다음 명령을 실행한다:

brew install node
brew install watchman

JDK

brew install --cask zulu@17

# cask가 설치된 경로를 얻어 설치 프로그램을 더블클릭한다.
brew info --cask zulu@17
export JAVA_HOME=/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home

Android 개발 환경

안드로이드 개발이 처음이라면 개발 환경을 설정하는 것이 다소 지루할 수 있다.

이미 안드로이드 개발에 익숙하다면 몇 가지 설정해야 할 사항이 있을 수 있다.

어떤 경우든 다음 몇 단계를 주의 깊게 살펴본다.

1. Android Studio 설치

Warning

체크박스들이 회색으로 표시되어 있는 경우, 해당 구성 요소들이 지금 바로 설치될 수 없는 상태라는 뜻이다.

이는 대개 두 가지 경우에 발생한다:

  • 해당 구성 요소들이 이미 시스템에 설치되어 있는 경우
  • 해당 구성 요소들을 설치하기 위한 선행 조건(예: 특정 디렉토리에 대한 쓰기 권한 등)이 충족되지 않은 경우

하지만 설치 마법사에서 이 구성 요소들을 선택할 수 없다고 해서 문제가 되는 것은 아니다. Android Studio 설치가 완료된 후, Android Studio 내부의 SDK Manager를 통해 언제든지 이 구성 요소들을 추가로 설치할 수 있다.

따라서 설치 과정에서 해당 체크박스들이 회색으로 표시되어 선택할 수 없더라도, 일단 설치를 진행하고 나중에 필요한 구성 요소를 추가로 설치하면 된다.

2. Android SDK 설치

Tip

SDK Manager는 Android Studio Settings 대화상자에서 Languages & Frameworks → Android SDK 아래에서도 찾을 수 있다.

3. ANDROID_HOME 환경 변수 설정
export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/platform-tools

올바른 Android SDK 경로를 사용해야 한다

Android Studio Settings 대화상자의 Languages & Frameworks → Android SDK 아래에서 SDK의 실제 위치를 찾을 수 있다.

Android 디바이스 준비하기

물리적 디바이스 사용하기
가상 디바이스 사용하기

iOS

종속성 설치하기

Node & Watchman

brew install node
brew install watchman

Xcode

명령줄 도구
Xcode에서 iOS 시뮬레이터 설치하기
CocoaPods

Note

더 자세한 내용은 CocoaPods 시작 가이드를 참조한다.

[선택사항] 환경 구성하기

NVM을 사용하는 경우

  • NVM(Node Version Manager)은 Node.js의 다양한 버전을 쉽게 설치하고 관리할 수 있도록 도와주는 커맨드라인 도구다. 이를 통해 프로젝트마다 다른 Node.js 버전을 사용할 수 있다.
  • zsh는 bash와 유사한 Unix 쉘로, 사용자와 시스템 간의 상호작용을 처리한다. macOS에서는 기본 쉘로 zsh를 사용한다.
  • 일반적으로 NVM 초기화 코드는 ~/.zshrc 파일에 위치한다. 이 파일은 zsh가 대화형 쉘로 시작될 때 읽는 구성 파일이다.
  • 하지만 Xcode는 ~/.zshrc 파일을 읽지 않기 때문에, Xcode 내에서 실행되는 빌드 단계에서는 NVM으로 설치한 Node.js를 사용할 수 없다.
  • 이 문제를 해결하기 위해, NVM 초기화 코드를 ~/.zshenv 파일로 이동한다.
  • ~/.zshenv 는 zsh가 시작될 때마다, 대화형 쉘이든 아니든 간에 항상 읽어들이는 파일이다. 따라서 Xcode를 포함한 모든 프로세스에서 NVM을 사용할 수 있게 된다.
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # 이 코드가 nvm을 로드한다.
  • 위 코드는 NVM 디렉토리를 환경 변수로 설정하고, nvm.sh 스크립트를 실행하여 NVM을 초기화한다.
  • 마지막으로, Xcode 프로젝트의 빌드 단계 중 "shell script build phase"에서 사용되는 쉘이 /bin/zsh 인지 확인한다.
  • 이는 빌드 과정에서 실행되는 쉘 스크립트들이 zsh 환경에서 동작하도록 보장하기 위함이다.