카테고리 없음

📌 React Native iOS 빌드 & ATT 적용 중 겪은 문제와 해결 과정 (정리)

Solo.dev 2025. 1. 23. 22:13

 

🚀 1. ATT 적용 & 빌드 오류 발생 (Command PhaseScriptExecution failed)

✅ ATT 적용 코드 개발 (ATT 거부 시 비개인화 광고 적용)
✅ iOS 빌드 실행 → 빌드 실패 (Command PhaseScriptExecution failed with a nonzero exit code)
✅ 문제 해결 시도: 빌드 클린, pod install, node_modules & Pods 삭제 후 재설치
🚨 여전히 해결되지 않음 → 문제 원인을 제대로 파악 못한 상태


🔥 2. 빌드 오류 해결 시도 중 Build service could not create build operation 추가 발생

🚨 기존 빌드 오류 해결하려다 새로운 오류 발생 (Build service could not create build operation: unknown error while handling message)
🚨 iOS 프로젝트가 꼬였을 가능성 고려하여 RN 버전 업그레이드 시도


⚠️ 3. RN 업그레이드 후 완전히 망가짐

✅ react-native-google-mobile-ads 최신 버전이 RN 0.76+을 요구한다는 정보 확인
✅ RN 0.77으로 업그레이드 시도 → 빌드 더 망가짐
🚨 Codegen 관련 오류 (UnsupportedModulePropertyParserError) 발생
🚨 Podfile 수정, react-native.config.js 수정, TurboModule 비활성화 등 시도했지만 문제 해결 안 됨


💀 4. 완전 망가진 후 Git 최신 버전으로 롤백 & ATT 적용 다시 시작

결국 Git 최신 커밋으로 되돌림 (git reset --hard)
✅ 기존 ATT 적용 코드도 사라짐 → ATT 수정 전 코드 다시 불러와서 처음부터 다시 작업
✅ RN 업그레이드는 보류하고, ATT 적용부터 다시 진행


🎯 5. 배운 점 & 개선할 점

1️⃣ node_modules, Pods 삭제 및 재설치는 신중하게!

  • 라이브러리 버전 문제로 인해 빌드가 더 꼬일 수 있음.
  • 빌드 오류 발생 시, 직접 삭제하기 전 문제 원인부터 파악해야 함.

2️⃣ 해결 후 반드시 git commit을 하자!

  • 문제 해결 후 바로 Git에 커밋해서 롤백 가능하도록 관리
  • 불필요한 reset이나 stash를 피하고, 작업 단위별로 커밋하면 복구가 쉬움.

3️⃣ React Native 업그레이드는 react-native upgrade-helper를 활용하자


📌 최종 결론

  1. ATT 적용은 처음엔 성공한 줄 알았으나, 빌드 오류 (Command PhaseScriptExecution failed)가 발생
  2. 빌드 오류 해결하려다가 Build service could not create build operation 발생 → 해결 못함
  3. RN 업그레이드 시도했지만 Codegen 오류로 인해 완전 망가짐
  4. 결국 Git 최신 커밋으로 롤백 후 ATT 적용부터 다시 작업

🚀 앞으로는 문제 해결 시
캐시 삭제 & 의존성 재설치 전에 신중하게 검토하고,
Git 커밋을 자주하며,
RN 업그레이드는 upgrade-helper를 활용해서 진행!