SwiftUI에서 info.plist가 누락된 문제

mynameisjaehoon·2022년 3월 19일
2
post-thumbnail

SwiftUI 프로젝트를 생성했을 때 info.plist파일이 누락되는 것을 볼 수 있다.

어떻게 된 일일까?

먼저 이러한 문제는 Xcode13 에서 프로젝트를 생성했을 때 나타나는 문제이다.
만약 Xcdoe 12 이하의 버전에서 프로젝트를 생성하고 Xcode 13에서 프로젝트를 열었다면 아무 문제가 없다.

SwiftUI 프로젝트를 Xcode 13에서 생성하면 info.plist 파일이 없는 것을 볼 수 있다.
Project Navigator의 모습이 다음과 같다.

❓ 왜 info.plist 파일이 없어졌나?

그 원인은 Xcode 13 Release Note 에서 찾아볼 수 있었다.
Xcode 13 Release Notes

빌드 시 대상에 대한 전체 Info.plist를 만들고 기본값에서 변경한 내용에 대한 Info.plist 프로젝트 파일만 생성하는 것으로 보인다.

Info Setting을 변경하기

SwiftUI와 같은 어떤 Xcode 템플릿들은 프로젝트 초기에 info.plist 파일을 생성하지 않는다.
프로젝트 Targets의 Info 탭에서 설정을 바꿀 수 있다.

여기서 나타나는 Info.plist 파일의 내용을 변경하면 Xcode 13이 Project Navigator에 info.plist파일을 보여준다.

앱에서 인터넷을 사용할 수 있도록 허용해주는 App Transport Security Settings을 변경하고 변화를 살펴보자.
Allow Arbitrary Loads의 설정을 YES 로 바꾸어 Info의 설정을 바꾸면 Xcode 13에서
아래와같이 plist파일을 Project Navigator에 보여준다.

Targets > Info 탭과 새로 생성된 plsit파일 두 곳에서 설정을 변경할 수 있고
Xcode가 이 두 파일의 상태를 동기화 해서 유지해준다.

설명은 그렇게 되어 있었지만, 둘 중 한 곳에서 설정을 변경했을 경우 동기화 되지 않고,
프로젝트를 닫고(Xcode 종료) 다시 열어야 해결되는 버그가 있기도 하다고 한다.

하지만 Project Navigator에 생긴 plist 파일에는 없고,Build Setting > Info.plis Values 에서만 설정할 수 있는 옵션도 있다.

또한 Packaging 탭에서 Xcode가 plist 파일을 생성하지 않도록 설정할 수도 있다.

0개의 댓글