일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- IOS프로그래밍
- 파이썬중급강의
- 파이썬중급
- SwiftUI
- 리프2기
- JS
- 프로그래머스
- uikit
- 인프런오리지널
- 웹크롤링
- 교환학생토플
- 우리를위한프로그래밍
- 토플
- 인프런강의
- IOS
- 인프런
- 인프런파이썬강의
- Python3
- 토플공부수기
- 카카오톡채팅봇
- 자바스크립트
- 스위프트
- 파이썬
- rxswift
- 파이썬웹크롤링
- swift
- 인프런파이썬
- 노드JS
- 유학토플
- nodeJS
- Today
- Total
먹고 기도하고 코딩하라
Xcode 15 App Extension 버전 조정하기 본문
올해 9월에 Xcode 15가 정식으로 배포되면서 집에서도 회사에서도 Xcode 버전을 올렸다.
메이저 업데이트를 한 뒤 마이너 업데이트를 앞두고 이슈를 처리하던 중.. 마스터 브랜치를 풀받았는데, 빌드는 성공하지만 Unable to Install 하면서 기기에 앱이 설치되지 않았다. 에러 메시지는 다음과 같았다.
the bundle info.plist does not contain a cfbundleversion key or its value is not a string.
버전이 없다니? Info.plist와 프로젝트 Identity 탭을 확인해봤지만 프로젝트 버전은 멀쩡했고 마케팅 버전까지도 잘 살아 있었다. 클린 빌드도 해보고 맥도 재시동해봤지만 문제는 여전했다.
마스터 브랜치에 뭔가 있었던 건 아닐지 하고 커밋 내역을 살펴봤다. NotificationServiceExtension과 WidgetExtension의 버전 정보가 삭제된 커밋이 있었다. extension에도 버전 정보가 필요한데 누락돼서 설치가 안 됐던 것으로 보인다.
결론적으로 이 에러가 나면
- TARGETS > Extension > Build Settings > Versioning에서 Current Project Version을 제대로 수정해주거나,
- PROJECT > Build Settings > Versioning에서 버전을 수정해주면 된다.
특히 PROJECT의 Versioning을 수정해주면 extension들의 버전이 한꺼번에 변경되기 때문에 이거 하나만 수정해주면 되긴 한다.
그런데 애초에 버전 정보가 누락되는 일이 왜 생겼을까 보면, Xcode 15로 올라가면서 extension의 General 섹션에는 Identity 탭이 사라졌다는 사실에 주목해야 한다.
예전에는 extension 버전을 바꿔주려면 그냥 TARGETS에서 탭만 하면 바로 나타나는 General 섹션에서 버전을 바꿔주면 됐는데, 지금은 Build Settings에서 Versioning을 검색해서 바꿔줘야 한다. 조금 귀찮아지긴 했다.
오죽하면 “제발 확장에 Identity 탭 좀 돌려놔달라”고 말하는 사람도 있다. 완전 이해한다.
'앱' 카테고리의 다른 글
Xcode 15에서 iOS 15 미만 기기 빌드 에러 이슈 (0) | 2023.11.24 |
---|---|
[Xcode] 14.3와 [weak self] 캡처 (0) | 2023.06.15 |