Repository navigation
fix(mobile): Xcode 27(iOS 27 SDK) 빌드 앱 실행 즉시 종료 수정 — UIScene 생명주기 채택 - #147
Merged
Merged
Conversation
iOS 27 SDK는 scene 기반 생명주기를 채택하지 않은 앱을 실행 시 거부한다. expo 57.0.30(57.0.23 이상 필수)으로 올리고 expo-build-properties의 ios.enableSceneSupport로 prebuild가 AppDelegate·Info.plist를 전환하게 한다. - expo ~57.0.30, expo-dev-client ~57.0.20, expo-notifications ~57.0.23 - react-native 0.86.3, jest-expo ~57.0.6 - expo-build-properties ~57.0.22 추가 - async-storage는 expo install --fix의 2.2.0 다운그레이드 권고를 따르지 않고 3.1.1 유지 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
UIScene life cycle is required for apps built with this SDK. 기존 SDK 57 템플릿의 AppDelegate 방식을 iOS 27이 거부함 — 스토어 제출 빌드(Task 8)에도 똑같이 걸리는 문제expo~57.0.15 → ~57.0.30 (enableSceneSupport는 57.0.23 이상 필수),expo-dev-client~57.0.20,expo-notifications~57.0.23,react-native0.86.3,jest-expo~57.0.6 (lockfile의@react-native/jest-preset도 0.86.3)expo-build-properties~57.0.22 추가 +ios.enableSceneSupport: true→ prebuild가 AppDelegate를ExpoReactNativeFactoryProvider로 바꾸고 Info.plist scene 설정이EXExpoAppSceneDelegate를 가리키게 함ios/는 gitignore(CNG)라 설정 플러그인으로만 반영 — 로컬 prebuild와 EAS 빌드 양쪽에서 재현됨expo install --fix가 권하는 async-storage 3.1.1 → 2.2.0 다운그레이드는 이번 문제와 무관해서 적용하지 않음Test plan
npx jest185/185 통과 (업그레이드 직후 첫 실행에서만 4개 스위트 실패, 이후 연속 3회 통과)npx tsc --noEmit통과expo prebuild --platform ios --clean결과 확인: AppDelegateExpoReactNativeFactoryProvider채택,startReactNative블록 제거, Info.plistUIApplicationSceneManifest→EXExpoAppSceneDelegate🤖 Generated with Claude Code