[Archive Build Error] Unable to load contents of file list: Target Support Files - 아카이빙 빌드 에러
시나리오: 아카이빙 하려니 또 만난 "Unable to load contents of file list: Target Support Files" 를 해결해보자.
이전에 삽질의 미학의 발견으로 인해 겁이 덜난다 🤯 차근차근 해보자.
앞선 포스팅을 보셨으면 감이 올 것이다. 아카이빙을 위한 build configuration이 release 로 설정되어 있기 때문이다.
필자가 진행하는 프로젝트에서는 Dev,Stage,Prod로 관리하고 있기 때문에 configuraion이 Release로 진행한다면 Pods에 Release의 각 서드파티들의 configuration 파일 설정이 누락되어 있기 때문에 발생하는 이슈였다.
타켓 설정에 마우스를 올리면 스키마를 관리할 수 있는 팝업이 뜬다.
Manage Schemes > 로그에 이슈가 되는 스키마를 선택 > 좌측하단에 Edit 버튼 클릭
아카이브 탭을 클릭하고 Build configuratio에 Release를 배포하려는 환경에 맞도록 바꿔주면 된다.
Release에서 사용될 configuration 파일설정이 안되어 있는것이 원인이기 때문에 조금 번거롭더라도 Pods의 configurations의 Release에서 configuration 파일들을 설정해 주는 방법도 있다.
Pods > Info 로 이동
엑스코드에서 프로젝트를 생성하고 서드파티를 사용하게 되면 개발자가 신경쓰지 않아도 configurations에 해당 파일들이 설정되어 있는 것을 확인 할 수 있다. 하지만 kotlin multiplatform을 하면서 안드로이드 스튜디오에서 pod 관련한 설정을 하다보니 이런 부분이 Xcode에서 Pod 생성, 진행하는 것과 안드로이드에서 Pod 설정 후 Xcode에서 실행 및 아카이빙을 진행하는데 매끄럽지 못한 경험을 하게 되었다.
배포환경을 별도로 관리하기위해 설정한 dev,stage,prod를 제외한 debug, release 의 configutation 파일들 매칭이 되어 있지 않는것을 확인할 수 있었다.
하나씩 매칭되는 파일들을 추가해주면 된다.
- 쿠키
추후 포스팅에서 Kotlin multiplatform mobile을 진행하면서 경험했던 내용, 장단점 등을 한번 정리해 보려고 한다.
그 중 하나만 이야기하자면 크로스 플랫폼의 큰 단점 중 하나가 디버깅이 어렵다는 점인데 인텔리제이에서 확인할 수 있는 로그를 Xcode에서도 오롯이 확인할 수가 있어서 Xcode를 통해 iOS 앱을 테스트할 때 로그 분석 및 수정이 용이했다.
깨알같이 하나 더!!
Xcode에서 실행하면 브레이크 포인트, LLDB 사용할 수 있어서 많은 개발자들이 사용하고 있을텐데 안드로이드 스튜디오에서도 LLDB를 통한 디버깅이 가능하다!
댓글 영역