실기기에서 React Native Metro 서버에 연결하기 위해 Mac의 로컬 IP를 동적
👉 그래서 Mac의 실제 IP (예: 192.168.x.x)가 필요
Code - generate METRO_HOST
빌드시점에 mac ip를 찾아서 info.plist에 변수를 추가해준다.
BuildPhases 탭 -> CP스크립트 최하단에 위치할것
#구 Run script 순서 주의 :: Copy 마지막에 놓여야 함. (덮어쓰기 가능성 0)
#구 IP_ADDR=$(ipconfig getifaddr en0)
# Wi-Fi(en0) 먼저 시도, 없으면 유선(en1) 시도
IP_ADDR=$(ipconfig getifaddr en0 || ipconfig getifaddr en1)
if [ -z "$IP_ADDR" ]; then
IP_ADDR="localhost"
fi
# Set/Add 명령 시 $IP_ADDR를 확실하게 따옴표로 감싸주세요.
TARGET_PLIST="${TARGET_BUILD_DIR}/${INFOPLIST_PATH}"
/usr/libexec/PlistBuddy -c "Set :METRO_HOST $IP_ADDR" "$TARGET_PLIST" || \
/usr/libexec/PlistBuddy -c "Add :METRO_HOST string $IP_ADDR" "$TARGET_PLIST"
echo "✅ Build Phase :: METRO_HOST: $IP_ADDR"