๋ด๊ฐ ์ฐ๊ณ ์ถ์ ์๋น์ค๋ฅผ ๋ง๋ค๊ณ ์ ํ๋ ๋ง์์ ์์ํ ๊ฑฐ์๋๋ฐ ๋๋ฌด ๋ง์ ์๊ฐ์ด ๊ฑธ๋ ธ๋ ๊ฒ ๊ฐ๋ค.

1. ํ์ํ ๊ฒ๋ค
- Apple Developer ๋ฉค๋ฒ์ญ ๊ฐ์
- Expo ๊ณ์ ๋ฐ ํ๋ก์ ํธ
2. Expo๋ก ๋น๋ํ๊ธฐ
Apple developer์ identifiers๋ฅผ ๋ฑ๋กํ๊ณ App Store Connect์๋ ์ฑ ์ ๋ณด๋ฅผ ๋ฑ๋กํ๊ธฐ ์ํด์๋ bundler ID ๊ฐ ํ์ฏ๋ค
๋ฒ๋คID๋ฅผ ์ด๋์ ์ฐพ๋๊ฑด์ง ๋ชฐ๋ผ์ ๊ณ ๋ฏผํ๋ค๊ฐ ๊ทธ๋ฅ ๋ฐ๋ก EAS ๋ก ๋ฐฐํฌ๋ฅผ ์๋ํ๋ ๋ฐฐํฌ๋ฅผ ํ๋ฉด์ ์์ฑํ ์๊ฐ ์์๋ค.
EAS๋ผ๋ ํด๋ผ์ฐ๋ ๋น๋ ์๋น์ค์ธ๋ฐ, Expo Application Service์ ์ค๋ง์ ๋๋ค. EAS build๋ ๊ธฐ๊ธฐ์ ์ค์นํ๋ ์ฑ ๋ฐ์ด๋๋ฆฌ๋ฅผ ๊ตฌ์ถํ๊ธฐ ์ํ ํธ์คํ ์๋น์ค๋ก ์ง์ ๋ณต์กํ ์์ ์ ๊ฑฐ์น์ง ์์๋ ์ฑ์ ์๋์ผ๋ก ๋ง๋ค์ด์ฃผ๋ ์๋น์ค์ ๋๋ค. Javascript ์ฑ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ios ๋ฐ android ํ๋ก์ ํธ๋ฅผ ์์ฑํ๊ณ ๊ตฌ์ฑํ ์ ์๊ฒ ํด์ค๋๋ค.
1. ํฐ๋ฏธ๋์์ ๋ช ๋ นํด ์ค์น
npm install -g eas-cli
npm install expo-dev-client
2. Expo ๊ณ์ ๋ก๊ทธ์ธ ํ์
npx eas login
email, password๋ฅผ ์ ์ผ๋ผ๊ณ ๋จ๋ฉด ๋ง์ถฐ์ ๊ธฐ์ ํด์ค๋๋ค.
๊ทธ๋ฌ๋ฉด ์๋์๊ฐ์ด ํ๋์ฉ ์์ฑ๋๋ฉด์ bundler indetifier๋ก ์์ฑ ๊ฐ๋ฅํฉ๋๋ค.
์์ ์ด ์ํ๋๋๋ก ๋ฃ์ ์ ์๋๋ฐ ์ ์ ์ผ๋ฉด ํ๋ก์ ํธ๋ช ์ ๋ง์ถฐ์ ์๋์์ฑ๋ฉ๋๋ค.

3. EAS ๋น๋ํ๊ธฐ
ios ๋ฒ์ ผ๋ง ๋น๋ํ ๊ฑฐ๋ผ์ ์๋์ ๋ช ๋ น์ด๋ฅผ ๋ฃ์ด์คฌ๋ค.
npx eas build -p ios
์์ ๋ช ๋ น์ด๋ฅผ ๋ฃ์ผ๋ฉด ์ฌ๋ฌ CLI ์ค์ ์ ๋ํด์ ๋์จ๋ค.
Apple ๋ก๊ทธ์ธ / ์ธ์ฆ์ ๋ฐ๊ธ ๋ฑ๋ฑ
ํ์ํ๊ฒ๋ค์ ๋ํด์ y ํ๋ฉด ๋จ.
๋น๋๊ฐ ์ ์์ ์ผ๋ก ๋๋ฉด App store connect ์ ์ฐ๋์ ์์ผ์ฃผ๋ฉด ๋๋ค.
4. API ํค ์์ฑํ๊ธฐ
App store connect์์ "์ฌ์ฉ์ ๋ฐ ์ก์ธ์ค > ํตํฉ" ์์ API ํค๋ฅผ ์์ฑํ๋ค.
expo.dev์์ ํด๋น project์ API Key ํ์ผ์ ๋ฑ๋กํด์ผํ๋ ์์ฑํด์ ์ ์ ์ฅํด๋์!
expo.dev์์ Projects > ํด๋น ํ๋ก์ ํธ > Configuration > Credentials๋ก ์ด๋ํ๋ฉด ios bundler identifier๋ฅผ ๋ณผ ์ ์๋ค ํด๋ฆญํด์ ๋ค์ด๊ฐ์ ๋ค์ด๋ฐ์๋ api key ํ์ผ์ ๋ฑ๋กํด์ฃผ๊ณ api key๋ฅผ ์์ฑํ ํ์ด์ง์ ๋์์๋ ์ ๋ณด๋ฅผ ๊ณ ์ค๋ํ ๊ธฐ์ ํด์ฃผ๋ฉด๋๋ค.
(key id, issue id, name ๋ฑ์ ๊ธฐ์ ํด์ค์ผํ๋ค.)

5. ์ ์ถํ์
๋ชจ๋ ๋ฑ๋ก์ด ๋๋๊ณ ๋๋ฉด ๋น๋ํ ํ๋ก์ ํธ๋ฅผ ์ ์ถํ๋ฉด ๋๋ค. ์๋์ ๋ช ๋ น์ด๋ฅผ ํฐ๋ฏธ๋์ ๋ฃ์ด์ค๋ค.
eas submit -p ios
๋ช ๊ฐ์ง ์ง๋ฌธ์ด ๋ถ๋๋ฐ,
What would you like to submit? โบ Select a build from EAS
submitํ id๋ฅผ ๋ฃ์ด๋ฌ๋ผ๋๋ฐ ์๋์ผ๋ก ์์ฑ๋์ด์์ ํ ๋ ์ ํํด์ ๋ฃ์ผ๋ฉด ๋๋ค.
๋ชจ๋ ๊ฒ์ด ์๋ฃ๋๋ฉด
App Store Connect > Testflight์ ๋น๋๋์ด์๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
์ฐธ๊ณ ๋ธ๋ก๊ทธ
- EAS๋ก ๋น๋ํ๊ณ ๋ฐฐํฌํ๊ธฐ - IOSํธ
- Expo ์ฑ์์ EAS๋ฅผ ์ด์ฉํ์ฌ Testflight์ ์ฌ๋ฆฌ๊ธฐ๊น์ง (feat. ๊ณ ๋๊ณผ ์ญ๊ฒฝ)
โ ๏ธ build์์ ๋ฐ์ํ ์ค๋ฅ
์ฒ์์ ๋์ด๋ฒ build์ ์คํจ๋ฅผ ํ๋ค. build์ ์คํจํ ๋ด์ฉ์ ํฐ๋ฏธ๋์์๋ ๋ฒ ์ ์์ง๋ง expo ๊ณ์ ์ ๋ค์ด๊ฐ์ ํด๋น ํ๋ก์ ํธ ๋น๋ ๋ด์ฉ์ ์์ธํ ๋ณผ ์ ์์ผ๋ ๊ทธ ๊ณณ์์ ํ์ธํด๋ ์ข๋ค.
ํฐ๋ฏธ๋์ ๋๋ฌด ๋ง์ ํ ์คํธ๊ฐ ๋จ๋ ํ์ธ์ ์ ๋๋ก ํ๊ธฐ ํ๋ค์ด์ expo ๊ณ์ ์ ๋ค์ด๊ฐ์ ๋น๋ ์คํจ ๋ด์ฉ์ ์์ธํ ํ์ด๋ดค๊ณ ๊ทธ ๊ณณ์์ expo-doctor์ ๋ํด์ ์ด์ผ๊ธฐ๋ฅผ ํด์ ๋ฐ๋ก ์๋ํด๋ณด๋ -
๋ช ๊ฐ์ง ๋น๋์ ๋ฌธ์ ๊ฐ ์๋ ๋ถ๋ถ์ ๋ํด์ ์๋์ ๊ฐ์ด ์ง์ด์ฃผ์๋ค.
๊ทธ๋์ ํฐ๋ฏธ๋์ ๋์์๋ ํด๊ฒฐ์ฑ ๋ค์ ํ๋์ฉ ๋ฐ๋ผํ๋๋ ๋ฐ๋ก - ํด๊ฒฐ!

'๊ฐ๋ฐ > React-Native' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[react-native] weekly calendar ๋ฃ์ด๋ณด๊ธฐ (0) | 2024.10.31 |
---|---|
[React Native] React Nativgation ์ ์ฉํ๊ธฐ - 2 (0) | 2022.03.16 |
[React Native] React Nativgation ์ ์ฉํ๊ธฐ - 1 (0) | 2022.03.09 |
[React Native] AppLoading (0) | 2022.02.28 |
[React-Native] ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ ์์ํ๊ธฐ( with Expo) (0) | 2022.02.21 |
๋ด๊ฐ ์ฐ๊ณ ์ถ์ ์๋น์ค๋ฅผ ๋ง๋ค๊ณ ์ ํ๋ ๋ง์์ ์์ํ ๊ฑฐ์๋๋ฐ ๋๋ฌด ๋ง์ ์๊ฐ์ด ๊ฑธ๋ ธ๋ ๊ฒ ๊ฐ๋ค.

1. ํ์ํ ๊ฒ๋ค
- Apple Developer ๋ฉค๋ฒ์ญ ๊ฐ์
- Expo ๊ณ์ ๋ฐ ํ๋ก์ ํธ
2. Expo๋ก ๋น๋ํ๊ธฐ
Apple developer์ identifiers๋ฅผ ๋ฑ๋กํ๊ณ App Store Connect์๋ ์ฑ ์ ๋ณด๋ฅผ ๋ฑ๋กํ๊ธฐ ์ํด์๋ bundler ID ๊ฐ ํ์ฏ๋ค
๋ฒ๋คID๋ฅผ ์ด๋์ ์ฐพ๋๊ฑด์ง ๋ชฐ๋ผ์ ๊ณ ๋ฏผํ๋ค๊ฐ ๊ทธ๋ฅ ๋ฐ๋ก EAS ๋ก ๋ฐฐํฌ๋ฅผ ์๋ํ๋ ๋ฐฐํฌ๋ฅผ ํ๋ฉด์ ์์ฑํ ์๊ฐ ์์๋ค.
EAS๋ผ๋ ํด๋ผ์ฐ๋ ๋น๋ ์๋น์ค์ธ๋ฐ, Expo Application Service์ ์ค๋ง์ ๋๋ค. EAS build๋ ๊ธฐ๊ธฐ์ ์ค์นํ๋ ์ฑ ๋ฐ์ด๋๋ฆฌ๋ฅผ ๊ตฌ์ถํ๊ธฐ ์ํ ํธ์คํ ์๋น์ค๋ก ์ง์ ๋ณต์กํ ์์ ์ ๊ฑฐ์น์ง ์์๋ ์ฑ์ ์๋์ผ๋ก ๋ง๋ค์ด์ฃผ๋ ์๋น์ค์ ๋๋ค. Javascript ์ฑ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ios ๋ฐ android ํ๋ก์ ํธ๋ฅผ ์์ฑํ๊ณ ๊ตฌ์ฑํ ์ ์๊ฒ ํด์ค๋๋ค.
1. ํฐ๋ฏธ๋์์ ๋ช ๋ นํด ์ค์น
npm install -g eas-cli
npm install expo-dev-client
2. Expo ๊ณ์ ๋ก๊ทธ์ธ ํ์
npx eas login
email, password๋ฅผ ์ ์ผ๋ผ๊ณ ๋จ๋ฉด ๋ง์ถฐ์ ๊ธฐ์ ํด์ค๋๋ค.
๊ทธ๋ฌ๋ฉด ์๋์๊ฐ์ด ํ๋์ฉ ์์ฑ๋๋ฉด์ bundler indetifier๋ก ์์ฑ ๊ฐ๋ฅํฉ๋๋ค.
์์ ์ด ์ํ๋๋๋ก ๋ฃ์ ์ ์๋๋ฐ ์ ์ ์ผ๋ฉด ํ๋ก์ ํธ๋ช ์ ๋ง์ถฐ์ ์๋์์ฑ๋ฉ๋๋ค.

3. EAS ๋น๋ํ๊ธฐ
ios ๋ฒ์ ผ๋ง ๋น๋ํ ๊ฑฐ๋ผ์ ์๋์ ๋ช ๋ น์ด๋ฅผ ๋ฃ์ด์คฌ๋ค.
npx eas build -p ios
์์ ๋ช ๋ น์ด๋ฅผ ๋ฃ์ผ๋ฉด ์ฌ๋ฌ CLI ์ค์ ์ ๋ํด์ ๋์จ๋ค.
Apple ๋ก๊ทธ์ธ / ์ธ์ฆ์ ๋ฐ๊ธ ๋ฑ๋ฑ
ํ์ํ๊ฒ๋ค์ ๋ํด์ y ํ๋ฉด ๋จ.
๋น๋๊ฐ ์ ์์ ์ผ๋ก ๋๋ฉด App store connect ์ ์ฐ๋์ ์์ผ์ฃผ๋ฉด ๋๋ค.
4. API ํค ์์ฑํ๊ธฐ
App store connect์์ "์ฌ์ฉ์ ๋ฐ ์ก์ธ์ค > ํตํฉ" ์์ API ํค๋ฅผ ์์ฑํ๋ค.
expo.dev์์ ํด๋น project์ API Key ํ์ผ์ ๋ฑ๋กํด์ผํ๋ ์์ฑํด์ ์ ์ ์ฅํด๋์!
expo.dev์์ Projects > ํด๋น ํ๋ก์ ํธ > Configuration > Credentials๋ก ์ด๋ํ๋ฉด ios bundler identifier๋ฅผ ๋ณผ ์ ์๋ค ํด๋ฆญํด์ ๋ค์ด๊ฐ์ ๋ค์ด๋ฐ์๋ api key ํ์ผ์ ๋ฑ๋กํด์ฃผ๊ณ api key๋ฅผ ์์ฑํ ํ์ด์ง์ ๋์์๋ ์ ๋ณด๋ฅผ ๊ณ ์ค๋ํ ๊ธฐ์ ํด์ฃผ๋ฉด๋๋ค.
(key id, issue id, name ๋ฑ์ ๊ธฐ์ ํด์ค์ผํ๋ค.)

5. ์ ์ถํ์
๋ชจ๋ ๋ฑ๋ก์ด ๋๋๊ณ ๋๋ฉด ๋น๋ํ ํ๋ก์ ํธ๋ฅผ ์ ์ถํ๋ฉด ๋๋ค. ์๋์ ๋ช ๋ น์ด๋ฅผ ํฐ๋ฏธ๋์ ๋ฃ์ด์ค๋ค.
eas submit -p ios
๋ช ๊ฐ์ง ์ง๋ฌธ์ด ๋ถ๋๋ฐ,
What would you like to submit? โบ Select a build from EAS
submitํ id๋ฅผ ๋ฃ์ด๋ฌ๋ผ๋๋ฐ ์๋์ผ๋ก ์์ฑ๋์ด์์ ํ ๋ ์ ํํด์ ๋ฃ์ผ๋ฉด ๋๋ค.
๋ชจ๋ ๊ฒ์ด ์๋ฃ๋๋ฉด
App Store Connect > Testflight์ ๋น๋๋์ด์๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
์ฐธ๊ณ ๋ธ๋ก๊ทธ
- EAS๋ก ๋น๋ํ๊ณ ๋ฐฐํฌํ๊ธฐ - IOSํธ
- Expo ์ฑ์์ EAS๋ฅผ ์ด์ฉํ์ฌ Testflight์ ์ฌ๋ฆฌ๊ธฐ๊น์ง (feat. ๊ณ ๋๊ณผ ์ญ๊ฒฝ)
โ ๏ธ build์์ ๋ฐ์ํ ์ค๋ฅ
์ฒ์์ ๋์ด๋ฒ build์ ์คํจ๋ฅผ ํ๋ค. build์ ์คํจํ ๋ด์ฉ์ ํฐ๋ฏธ๋์์๋ ๋ฒ ์ ์์ง๋ง expo ๊ณ์ ์ ๋ค์ด๊ฐ์ ํด๋น ํ๋ก์ ํธ ๋น๋ ๋ด์ฉ์ ์์ธํ ๋ณผ ์ ์์ผ๋ ๊ทธ ๊ณณ์์ ํ์ธํด๋ ์ข๋ค.
ํฐ๋ฏธ๋์ ๋๋ฌด ๋ง์ ํ ์คํธ๊ฐ ๋จ๋ ํ์ธ์ ์ ๋๋ก ํ๊ธฐ ํ๋ค์ด์ expo ๊ณ์ ์ ๋ค์ด๊ฐ์ ๋น๋ ์คํจ ๋ด์ฉ์ ์์ธํ ํ์ด๋ดค๊ณ ๊ทธ ๊ณณ์์ expo-doctor์ ๋ํด์ ์ด์ผ๊ธฐ๋ฅผ ํด์ ๋ฐ๋ก ์๋ํด๋ณด๋ -
๋ช ๊ฐ์ง ๋น๋์ ๋ฌธ์ ๊ฐ ์๋ ๋ถ๋ถ์ ๋ํด์ ์๋์ ๊ฐ์ด ์ง์ด์ฃผ์๋ค.
๊ทธ๋์ ํฐ๋ฏธ๋์ ๋์์๋ ํด๊ฒฐ์ฑ ๋ค์ ํ๋์ฉ ๋ฐ๋ผํ๋๋ ๋ฐ๋ก - ํด๊ฒฐ!

'๊ฐ๋ฐ > React-Native' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[react-native] weekly calendar ๋ฃ์ด๋ณด๊ธฐ (0) | 2024.10.31 |
---|---|
[React Native] React Nativgation ์ ์ฉํ๊ธฐ - 2 (0) | 2022.03.16 |
[React Native] React Nativgation ์ ์ฉํ๊ธฐ - 1 (0) | 2022.03.09 |
[React Native] AppLoading (0) | 2022.02.28 |
[React-Native] ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ ์์ํ๊ธฐ( with Expo) (0) | 2022.02.21 |