๋ฐ˜์‘ํ˜•

nextjs,tailwindcss,vercel 73

EAS (Expo Application Services) build์—์„œ Play Console๋กœ ์ง์ ‘ ๋ฐฐํฌ

EAS (Expo Application Services) build์—์„œ Play Console๋กœ ์ง์ ‘ ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ด๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.1. ๋จผ์ € eas.json ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค:```json{  "build": {    "production": {      "android": {        "buildType": "app-bundle",        "submitToPlayStore": true      }    }  },  "submit": {    "production": {      "android": {        "serviceAccountKeyPath": "./pc-api-key.json",        "track": "internal"  // internal, alpha, beta,..

expo router ํ”„๋กœ์ ํŠธ์— google admob ๊ด‘๊ณ  ์—ฐ๋™ํ•˜๋Š” ๋ฒ• ์ด์ •๋ฆฌ

1. react-native-google-mobile-ads ์„ ์‚ฌ์šฉํ•œ๋‹ค.  npx expo install react-native-google-mobile-ads 2. Google AdMob ์—์„œ App ID ๋ฐœ๊ธ‰๋ฐ›๊ธฐGoogle AdMob account ์—์„œ ์ƒˆ๋กœ์šด ์•ฑ์„ ์ƒ์„ฑํ•œ๋‹ค.  * ๊ฐœ๋ฐœ ์ค‘์—๋Š” ํ…Œ์ŠคํŠธ ๊ด‘๊ณ  ID๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.  3. app.json ์—…๋ฐ์ดํŠธ{  "expo": {    ...    "plugins": [      [        "react-native-google-mobile-ads",        {          "androidAppId": "ca-app-pub-xxxxxxxx~xxxxxxxx",          "iosAppId": "ca-app-pub-xxxxxxxx~xxxx..

EPERM: operation not permitted, scandir Trash ์˜ค๋ฅ˜

eas build ํ•˜๋Š” ๊ณผ์ •์—์„œ EPERM: operation not permitted, scandir '/.Trash   muhammedsowan@Muhammeds-Mac-mini coach-admin-app %  EAS build โœ” Select platform › Androidโœ” Using remote Android credentials (Expo server)โœ” Using Keystore from configuration: Build Credentials WVpHwlx0HX (default)Compressing project files and uploading to EAS Build. Learn moreEPERM: operation not permitted, scandir '/Users/muham..

eas build ๋ช…๋ น์–ด ์ •๋ฆฌ (๊ฐœ๋ฐœ์šฉ ํ”„๋กœ๋•์…˜์šฉ)

์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ๋นŒ๋“œ ๋ช…๋ น์–ด์— ๋Œ€ํ•ด ๊ฐ๊ฐ ์„ค๋ช…ํ•ด๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค:1. ๊ฐœ๋ฐœ์šฉ ๋นŒ๋“œ:eas build --profile development --platform android- ๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ ๋””๋ฒ„๊ทธ ๊ฐ€๋Šฅํ•œ APK๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค- ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜๊ณ  ๋””๋ฒ„๊น… ๊ธฐ๋Šฅ์ด ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค- ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฐœ๋ฐœ ์ค‘์— ์‚ฌ์šฉํ•˜๋ฉฐ Play Store ์ถœ์‹œ์šฉ์œผ๋กœ๋Š” ๋ถ€์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค2. ํ…Œ์ŠคํŠธ์šฉ APK ๋นŒ๋“œ:eas build --profile preview --platform android- ํ…Œ์ŠคํŠธ ๋ชฉ์ ์˜ ๋ฆด๋ฆฌ์Šค APK๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค- ๋””๋ฒ„๊ทธ ๊ธฐ๋Šฅ์€ ๋น„ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์ง€๋งŒ APK ํ˜•์‹์œผ๋กœ ๋นŒ๋“œ๋ฉ๋‹ˆ๋‹ค- ๋ฒ ํƒ€ ํ…Œ์Šคํ„ฐ๋“ค์—๊ฒŒ ๋ฐฐํฌํ•˜๊ธฐ ์ข‹์€ ํ˜•์‹์ž…๋‹ˆ๋‹ค3. ํ”„๋กœ๋•์…˜ AAB ๋นŒ๋“œ:eas build --profile production ..

expo router assets ์ด๋ฏธ์ง€๊ฐ€ ๋œป ํ•˜๋Š” ๊ฒƒ (์ข…๋ฅ˜, ํฌ๊ธฐ)

expo router ํ”„๋กœ์ ํŠธ์—์„œ ๊ฐ ์ด๋ฏธ์ง€๋“ค์˜ ์“ฐ์ž„๊ณผ ํฌ๊ธฐ๋ฅผ ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค.assets/images ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ๋ณด์—ฌ์ฃผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ ์ด๋ฏธ์ง€ ํŒŒ์ผ์˜ ์ผ๋ฐ˜์ ์ธ ์šฉ๋„์™€ ํŠน์ง•์„ ์„ค๋ช…ํ•ด๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค1. adaptive-icon.png- Android ์•ฑ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ ์‘ํ˜• ์•„์ด์ฝ˜- ์ผ๋ฐ˜์ ์œผ๋กœ 108x108px ํฌ๊ธฐ- ๋‹ค์–‘ํ•œ Android ๊ธฐ๊ธฐ์˜ ํ™ˆ ์Šคํฌ๋ฆฐ์—์„œ ์•ฑ ์•„์ด์ฝ˜์œผ๋กœ ์‚ฌ์šฉ2. favicon.png- ์›น ๋ธŒ๋ผ์šฐ์ € ํƒญ๊ณผ ๋ถ๋งˆํฌ์— ํ‘œ์‹œ๋˜๋Š” ์ž‘์€ ์•„์ด์ฝ˜- ๋ณดํ†ต 16x16px ๋˜๋Š” 32x32px ํฌ๊ธฐ- ์›น์‚ฌ์ดํŠธ๋ฅผ ๋Œ€ํ‘œํ•˜๋Š” ์ž‘์€ ๋กœ๊ณ ๋กœ ์‚ฌ์šฉ3. icon.png- ์•ฑ์˜ ๊ธฐ๋ณธ ์•„์ด์ฝ˜- ์ผ๋ฐ˜์ ์œผ๋กœ 192x192px ๋˜๋Š” 512x512px ํฌ๊ธฐ- PWA(Progressive Web App)๋‚˜ ์•ฑ ์Šคํ† ์–ด์šฉ ์•„์ด์ฝ˜์œผ๋กœ..

android Keystore ๋ž€? expo ๋นŒ๋“œ์‹œ

Keystore๋Š” Android ์•ฑ์„ ์„œ๋ช…ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋””์ง€ํ„ธ ์ธ์ฆ์„œ์ž…๋‹ˆ๋‹ค. ์ค‘์š”ํ•œ ์—ญํ• :1. ์•ฑ์˜ ์ธ์ฆ์„ฑ ๋ณด์žฅ2. ์•ฑ ์—…๋ฐ์ดํŠธ ์‹œ ๊ฐ™์€ ๊ฐœ๋ฐœ์ž์ž„์„ ์ฆ๋ช…3. Google Play Store ๋ฐฐํฌ์— ํ•„์ˆ˜์ EAS๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ Keystore๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:1. Expo ์›น ๋Œ€์‹œ๋ณด๋“œ์—์„œ ํ™•์ธ:https://expo.dev/accounts/[your-username]/projects/[project-name]/credentials2. CLI์—์„œ ํ™•์ธ:eas credentialsEAS๋Š” ์ž๋™์œผ๋กœ Keystore๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์•ˆ์ „ํ•˜๊ฒŒ ๊ด€๋ฆฌํ•ด์ฃผ๋ฏ€๋กœ, ์ง์ ‘ ๊ด€๋ฆฌํ•  ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ช‡ ๊ฐ€์ง€ ์•Œ์•„๋‘๋ฉด ์ข‹์€ ์ ๋“ค:- Keystore ๋ถ„์‹ค ์‹œ ๊ฐ™์€ ํ‚ค๋กœ ์„œ๋ช…๋œ ์•ฑ ์—…๋ฐ์ดํŠธ ๋ถˆ๊ฐ€- EAS๊ฐ€ ..

Expo ํ”„๋กœ์ ํŠธ๋ฅผ ์•ˆ๋“œ๋กœ์ด๋“œ Play Console์— ์ถœ์‹œํ•˜๋Š” ๊ณผ์ •์„ ๋‹จ๊ณ„๋ณ„๋กœ ์„ค๋ช…

Expo ํ”„๋กœ์ ํŠธ๋ฅผ ์•ˆ๋“œ๋กœ์ด๋“œ Play Console์— ์ถœ์‹œํ•˜๋Š” ๊ณผ์ •์„ ๋‹จ๊ณ„๋ณ„๋กœ ์„ค๋ช…ํ•ด๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค:1. **์‚ฌ์ „ ์ค€๋น„์‚ฌํ•ญ**# eas-cli ์„ค์น˜npm install -g eas-cli# Expo ๊ณ„์ • ๋กœ๊ทธ์ธeas login2. **์•ฑ ๊ตฌ์„ฑ ์„ค์ •**ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ์— `eas.json` ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ๊ตฌ์„ฑ:```json{  "cli": {    "version": ">= 3.13.3"  },  "build": {    "development": {      "developmentClient": true,      "distribution": "internal"    },    "preview": {      "distribution": "internal"    },    "production": {    ..

์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ์ถœ์‹œ 7์ธ์น˜ํƒœ๋ธ”๋ฆฟ, 10์ธ์น˜ ํƒœ๋ธ”๋ฆฟ ์ด๋ฏธ์ง€ ์ƒ์„ฑ

์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ์ถœ์‹œ ํ•  ๋•Œ  7์ธ์น˜ํƒœ๋ธ”๋ฆฟ, 10์ธ์น˜ ํƒœ๋ธ”๋ฆฟ ์ด๋ฏธ์ง€ ์ƒ์„ฑexpoํ™˜๊ฒฝ,์•ˆ๋“œ๋กœ์ด๋“œ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ์—์„œ ํŒจ๋“œ ์„ค์ •ํ›„ ์Šคํฌ๋ฆฐ์ƒท ์ฐ์œผ๋ฉด ๋œ๋‹ค.  Expo ๊ฐœ๋ฐœ ์„œ๋ฒ„์—์„œ ๋‹ค๋ฅธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์—์„œ ์•ฑ์„ ์—ด๊ธฐ ์œ„ํ•ด์„œ๋Š” Android Studio์˜ Device Manager๋ฅผ ํ†ตํ•ด ์ถ”๊ฐ€ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋“ค์„ ์‹คํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.1. 7์ธ์น˜ ํƒœ๋ธ”๋ฆฟ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ์ƒ์„ฑ:# Android Studio > Device Manager์—์„œ- Create Device ์„ ํƒ- Tablet ์นดํ…Œ๊ณ ๋ฆฌ ์„ ํƒ- 7์ธ์น˜ ํƒœ๋ธ”๋ฆฟ(์˜ˆ: Pixel C) ์„ ํƒ- ์›ํ•˜๋Š” API ๋ ˆ๋ฒจ ์„ ํƒํ•˜๊ณ  ์—๋ฎฌ๋ ˆ์ดํ„ฐ ์ƒ์„ฑ2. 10์ธ์น˜ ํƒœ๋ธ”๋ฆฟ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ์ƒ์„ฑ:# Android Studio > Device Manager์—์„œ- Create Device ์„ ํƒ- Tablet ์นดํ…Œ๊ณ ๋ฆฌ ..

์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ์ถœ์‹œ ์‹œ ์ œ์ถœํ•ด์•ผํ•  ์ด๋ฏธ์ง€ ๊ทธ๋ž˜ํ”ฝ๋“ค

๊ธฐ๋ณธ๊ฐ’ – ํ•œ๊ตญ์–ด – ko-KR* – ํ•„์ˆ˜ ์ž…๋ ฅ๋ž€์ž…๋‹ˆ๋‹ค. ํ•œ๊ตญ์–ด – ko-KR์˜ ๋ชจ๋“  ์ž…๋ ฅ๋ž€์„ ์ž‘์„ฑํ•ด ์ฃผ์„ธ์š”.์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ์ฒ˜์Œ ์ถœ์‹œ์‹œ ๋“ฑ๋ก ์ •๋ณด ์ž…๋ ฅํ•ด์•ผํ•  ๊ฒƒ ๋“ค์ •๋ฆฌ์•ฑ ์ด๋ฆ„ *๋ฐฐ๋‹นํˆฌ์ž ๊ณ„์‚ฐ๊ธฐ - ETF ๋ฐฐ๋‹น ์ˆ˜์ต ์ž๋™๊ณ„์‚ฐGoogle Play์— ํ‘œ์‹œ๋˜๋Š” ์•ฑ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. 25/3025์ž(์˜๋ฌธ ๊ธฐ์ค€)๋กœ ๊ตฌ์„ฑ๋œ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. /30๊ฐ„๋‹จํ•œ ์„ค๋ช… *๊ฐ„๋‹จํ•œ ์•ฑ ์„ค๋ช…์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๋ทฐ๋ฅผ ํŽผ์น˜๋ฉด ์ž์„ธํ•œ ์„ค๋ช…์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 0/800์ž(์˜๋ฌธ ๊ธฐ์ค€)๋กœ ๊ตฌ์„ฑ๋œ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. /80์ž์„ธํ•œ ์„ค๋ช… * 0/40000์ž(์˜๋ฌธ ๊ธฐ์ค€)๋กœ ๊ตฌ์„ฑ๋œ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. /4000๊ทธ๋ž˜ํ”ฝ์•ฑ ์•„์ด์ฝ˜, ์Šคํฌ๋ฆฐ์ƒท, ๋™์˜์ƒ์„ ๊ด€๋ฆฌํ•˜์—ฌ Google Play์—์„œ ์•ฑ์„ ํ™๋ณดํ•˜์„ธ์š”. ์ƒˆ๋กœ์šด ๊ทธ๋ž˜ํ”ฝ์„ ์—…๋กœ๋“œํ•˜๊ธฐ ์ „์— ์ฝ˜ํ…์ธ  ๊ฐ€์ด๋“œ๋ผ์ธ์„ ๊ฒ€ํ† ํ•˜์„ธ์š”. ํ˜„์ง€ํ™”๋œ ..

์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ ๊ฐœ๋ฐœ - expo assets ์‚ฌ์ง„๋“ค ์„ค๋ช…

expo๋กœ ๋นŒ๋“œํ•˜๋ฉด ์ž๋™์ ์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” ์‚ฌ์ง„๋“ค์— ๋Œ€ํ•œ ์„ค๋ช…๊ฐ๊ฐ์˜ ์šฉ๋„์™€ ํฌ๊ธฐ ๋“ฑ๋“ฑ ์ •๋ฆฌํ•˜๊ณ ์ž ํ•œ๋‹ค.  adaptive-icon.pngํฌ๊ธฐ: 1024 x 1024 pixels์šฉ๋„: ์•ˆ๋“œ๋กœ์ด๋“œ 8.0 ์ด์ƒ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ ์‘ํ˜• ์•„์ด์ฝ˜ํŠน์ง•:์ด๋ฏธ์ง€์˜ ์ค‘์š”ํ•œ ์š”์†Œ๋“ค์€ ์ค‘์•™ 710x710 pixels ์˜์—ญ ์•ˆ์— ๋ฐฐ์น˜๋ฐฐ๊ฒฝ์ด ํˆฌ๋ช…ํ•˜๋ฉด ์•ˆ๋จ์•ˆ๋“œ๋กœ์ด๋“œ์˜ ๋‹ค์–‘ํ•œ ์•„์ด์ฝ˜ ๋ชจ์–‘(์›ํ˜•, ์‚ฌ๊ฐํ˜• ๋“ฑ)์— ๋Œ€์‘favicon.pngํฌ๊ธฐ: 32 x 32 pixels์šฉ๋„: ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ํƒญ์ด๋‚˜ ๋ถ๋งˆํฌ์— ํ‘œ์‹œ๋˜๋Š” ์•„์ด์ฝ˜ํŠน์ง•:์ž‘์€ ํฌ๊ธฐ์—์„œ๋„ ์‹๋ณ„ ๊ฐ€๋Šฅํ•ด์•ผ ํ•จ๋‹จ์ˆœํ•œ ๋””์ž์ธ ๊ถŒ์žฅicon.pngํฌ๊ธฐ: 1024 x 1024 pixels์šฉ๋„: ์•ฑ์Šคํ† ์–ด์™€ ๊ธฐ๊ธฐ์— ํ‘œ์‹œ๋˜๋Š” ๊ธฐ๋ณธ ์•ฑ ์•„์ด์ฝ˜ํŠน์ง•:์—ฌ๋ฐฑ: ๊ฐ€์žฅ์ž๋ฆฌ์—์„œ 10% ์ •๋„๋ชจ์„œ๋ฆฌ ๋ผ์šด๋”ฉ ์ฒ˜๋ฆฌํ•˜์ง€ ์•Š์Œ (์ž..

๋ฐ˜์‘ํ˜•