Flutter 3.27 업데이트 후 iOS 빌드 속도 개선

문제 상황

Flutter 3.27로 업데이트한 후 iOS 빌드 시간이 평균 2분에서 3분 반으로 늘어났다. CI/CD 파이프라인에서도 같은 현상이 발생했고, 팀 전체가 영향을 받았다.

원인 파악

flutter build ios --verbose로 확인한 결과, CocoaPods dependencies 처리 단계에서 시간이 오래 걸렸다. Flutter 3.27에서 Xcode 15.1 지원이 추가되면서 빌드 프로세스가 변경된 것으로 보였다.

해결 방법

1. Podfile 수정

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
      config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'YES'
    end
  end
end

2. 빌드 캐시 정리

cd ios
rm -rf Pods
rm Podfile.lock
flutter clean
flutter pub get
pod install --repo-update

3. Xcode Build Settings

Xcode에서 ENABLE_USER_SCRIPT_SANDBOXINGNO로 설정했다. Flutter 3.27에서 이 옵션이 기본값으로 활성화되면서 일부 스크립트 실행이 느려진 것이었다.

결과

빌드 시간이 다시 2분 10초 정도로 돌아왔다. CI 환경에서는 pod cache를 적극 활용하도록 수정해서 추가로 20초 단축했다.

참고사항

Flutter 3.27의 주요 변경사항 중 Impeller 렌더링 엔진이 iOS에서 기본 활성화되었다. 성능 개선은 체감되지만, 일부 커스텀 셰이더가 호환 이슈를 보였다. 프로덕션 배포 전 충분한 테스트가 필요하다.