엑스포 환경에서 아임포트 모듈을 연동하려면 반드시 EJECT 하셔야 합니다. 아임포트 모듈이 네이티브단 코드를 포함하고 있기 때문입니다. 아래는 엑스포 환경에서 EJECT를 통해 아임포트 모듈을 연동하는 방법에 대해 안내합니다. 해당 안내는 엑스포 공식문서 Ejecting to ExpoKit를 기반으로 작성했습니다.
$ npm install -g expo-cli
원활한 ejecting을 위해 아래와 같이 설정되어 있는지 확인합니다.
// app.json
{
"expo": {
"name": "Your App Name",
"icon": "./path/to/your/app-icon.png",
"version": "1.0.0",
"slug": "your-app-slug",
"sdkVersion": "XX.0.0",
"ios": {
"bundleIdentifier": "com.yourcompany.yourappname"
},
"android": {
"package": "com.yourcompany.yourappname"
}
}
}
- IOS의
bundleIdentifier
값과 Android의package
값에 알맞은 값을 넣어야 합니다. name
,icon
그리고version
필드는 필수입력입니다.- 보다 자세한 내용은 엑스포 공식문서 Configure app.json을 참고해주세요.
프로젝트 폴더에서 expo 명령어를 통해 eject 합니다. android와 ios 폴더가 생성되며 필요한 dependency들이 설치됩니다.
$ expo eject
위 명령어를 실행하면 아래와 같은 내용이 출력됩니다.
두번째 ExpoKit: I'll create or log in with an Expo account to use React Native and the Expo SDK.
를 선택합니다. 이후 모든 과정은 아임포트 RN 모듈 사용법과 동일합니다.
$ npm install --save iamport-react-native
$ npm install --save [email protected] // EXPO와 호환되는 최신 버전 7.0.5 설치
$ react-native link iamport-react-native