npm install -g expo-cli
expo init "프로젝트 명"
npx expo start 또는 npm start
Android Studio, XCode 설치 불필요.
안드로이드 앱, ios 앱 동시 개발 가능
npm start 실행 후 a키를 클릭하여 내 실제 디바이스로 개발 과정을 바로 확인할 수 있다.
(QR코드 스캔)

eas build --profile development --platform android로 빌드한 결과물이 내 Expo계정에 올라오는데(internal distribution build) 플레이스토어에 빌드 정보를 연동하여 배포 할 수 있다.
https://docs.expo.dev/develop/development-builds/create-a-build/
체크박스와 같은 일부 UI를 지원한다.
https://docs.expo.dev/versions/latest/sdk/checkbox/
(빌드 제한 횟수 초과 메시지)

빌드 시 본인 빌드 순서를 기다려야 한다.(Waiting Queue.)
apk 파일을 자유롭게 추출하기가 어렵다.
(apk 생성 명령 expo build:android
후 app-debug.apk 실행 시 앱이 바로 실행되는 것이 아니라 expo 프로젝트 선택 화면이 실행)
package.json에서 스플래시 화면을 적용할 수 있으나, 내가 원하는 방식으로 디테일하게 조작하기가 어려움
RN CLI 설치
npm install -g react-native-cli
RN 프로젝트 생성
npx react-native init "프로젝트 명"
Android Studio 설치
https://jdk.java.net/java-se-ri/17 (open JDK)
https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html (Oracle)
android/gradle/wrapper/gradle-wrapper.propeties
제 프로젝트에서는 다음과 같이 gradle이 8.3 버전으로 적용이 되었네요. 그래서 gradle과 호환되도록 jdk 17버전으로
설치를 진행하였습니다.
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
npm run android
자유롭게 apk 파일 생성을 할 수 있다.(android 폴더에서 gradlew ./assembleDebug, gradlew ./assembleRelease 로 빌드)
빌드 시간이 상대적으로 짧다.
네이티브 코드로 RN 환경에서 자바스크립트로 할 수 없는 디테일한 코드 구현을 할 수 있다.
(저는 스플래시 스크린 중앙에 나오는 이미지 크기 맞추기 위해서 네이티브로 구현)