상세 컨텐츠

본문 제목

[Archive Build Error] Unable to load contents of file list: Target Support Files - 아카이빙 빌드 에러

iOS 캐기/Error 캐기

by Atlas 2023. 11. 3. 11:46

본문

728x90
반응형

시나리오: 아카이빙 하려니 또 만난 "Unable to load contents of file list: Target Support Files" 를 해결해보자.

 

 

 

이전에 삽질의 미학의 발견으로 인해 겁이 덜난다 🤯 차근차근 해보자.

 

2023.10.31 - [iOS 캐기/Error 캐기] - [Build Error] Unable to load contents of file list: Target Support Files && Unabled to install

 

[Build Error] Unable to load contents of file list: Target Support Files && Unabled to install

시나리오: KMP 프로젝트에서 android, ios 프로젝트가 각 각 생성되는데 Xcode로 프로젝트를 열고 실기기에 설치 및 실행을 해보자. Error 1. Unable to load contents of file list: '/Target Support Files/ 안드로이드

artieee.tistory.com

 

 

원인

앞선 포스팅을 보셨으면 감이 올 것이다. 아카이빙을 위한 build configuration이 release 로 설정되어 있기 때문이다.

필자가 진행하는 프로젝트에서는 Dev,Stage,Prod로 관리하고 있기 때문에 configuraion이 Release로 진행한다면 Pods에 Release의 각 서드파티들의 configuration 파일 설정이 누락되어 있기 때문에 발생하는 이슈였다. 

 

 

 

 

해결방법

1. Build Configuration 변경 

 

 

타켓 설정에 마우스를 올리면 스키마를 관리할 수 있는 팝업이 뜬다. 

Manage Schemes > 로그에 이슈가 되는 스키마를 선택 > 좌측하단에 Edit 버튼 클릭 

 

 

 

아카이브 탭을 클릭하고 Build configuratio에 Release를 배포하려는 환경에 맞도록 바꿔주면 된다. 

 

 

2. Pods -> Configurations -> configuration 파일 설정

Release에서 사용될 configuration 파일설정이 안되어 있는것이 원인이기 때문에 조금 번거롭더라도 Pods의 configurations의 Release에서 configuration 파일들을 설정해 주는 방법도 있다. 

 

Pods > Info 로 이동 

Xcode에서 Pods 설정 후 configuraions

 

엑스코드에서 프로젝트를 생성하고 서드파티를 사용하게 되면 개발자가 신경쓰지 않아도 configurations에 해당 파일들이 설정되어 있는 것을 확인 할 수 있다. 하지만 kotlin multiplatform을 하면서 안드로이드 스튜디오에서 pod 관련한 설정을 하다보니 이런 부분이 Xcode에서 Pod 생성, 진행하는 것과 안드로이드에서 Pod 설정 후 Xcode에서 실행 및 아카이빙을 진행하는데 매끄럽지 못한 경험을 하게 되었다. 

 

안드로이드 스튜디오에서 Pods 설정 후 Xcode에서 확인할 수 있는 Pods Configuraions

 

 

배포환경을 별도로 관리하기위해 설정한 dev,stage,prod를 제외한 debug, release 의 configutation 파일들 매칭이 되어 있지 않는것을 확인할 수 있었다. 

 

 

 

하나씩 매칭되는 파일들을 추가해주면 된다. 

 

 

 

마무리 

- 쿠키 

추후 포스팅에서 Kotlin multiplatform mobile을 진행하면서 경험했던 내용, 장단점 등을 한번 정리해 보려고 한다. 

그 중 하나만 이야기하자면 크로스 플랫폼의 큰 단점 중 하나가 디버깅이 어렵다는 점인데 인텔리제이에서 확인할 수 있는 로그를 Xcode에서도 오롯이 확인할 수가 있어서 Xcode를 통해 iOS 앱을 테스트할 때 로그 분석 및 수정이 용이했다.

 

깨알같이 하나 더!! 

Xcode에서 실행하면 브레이크 포인트, LLDB 사용할 수 있어서 많은 개발자들이 사용하고 있을텐데 안드로이드 스튜디오에서도 LLDB를 통한 디버깅이 가능하다!

 

반응형

관련글 더보기

댓글 영역