[Xcode] disallowed nested bundles 앱스토어 업로드 문제 해결하기

반응형

 xcframework 오류 

 

앱스토어에 앱을 올릴때 라이브러리에 문제가 있다면 앱스토어에서 업로드를 거부합니다. 기존에 다양한 라이브러리들이 존재하지만 새롭게 추가된 xcframework의 경우 처음 추가해보기 때문에 문제가 발생해도 어떻게 처리해야 할지 난감하더군요. 다음은 에러에 대한 내용입니다.

 

Asset validation failed
Invalid bundle structure. The "AIA.app/Frameworks/sdk.framework/Frameworks/native_engine.framework/native_engine" binary file is not permitted. Your app cannot contain standalone executables or libraries, other than a valid CFBundleExecutable of supported bundles. For details, visit: https://developer.apple.com/ documentation/bundleresources/placing_content_in_a_bundle (ID: 84a6dc80-3a51-415a-9b2c-c2902cdb6a00)

Asset validation failed
Invalid bundle structure. The "AI.app/Frameworks/sdk.framework/Frameworks/ObicUtils.framework/ObicUtils" binary file is not permitted. Your app cannot contain standalone executables or libraries, other than a valid CFBundleExecutable of supported bundles. For details, visit: https:/developer.apple.com/ documentation/bundleresources/placing_content_in_a_bundle (ID: f5d45d47-429c-4ee7-b18b-569fc284104)

Asset validation failed
Invalid Bundle. The bundle at 'AIA.app/Frameworks/sdk.framework' contains disallowed nested bundles. (ID: 10759a4-5b35-4a61-a83-ff30c5b9344e)

Asset validation failed
Invalid Bundle. The bundle at 'AlA.app/Frameworks/sok.framework' contains disallowed file 'Frameworks'. (ID: 245588ce-942-497a-bb2b-a74bec5d01f3)

 


프로젝트를 진행하는 중에 위과 같은 오류를 만나게 되었습니다. 분명 시뮬레이터나 아이폰 단말 기기에 올려서 확인했을 때는 문제가 없었는데 앱스토어에 업로드하니 다음과 같은 오류를 만나 이를 해결한 방법을 공유합니다. 
우선 프로젝트는 3가지의 라이브러리를 가지고 있습니다. 문제는 nested bundles 즉 중복된 번들을 포함하고 있어서 위와 같은 문제가 발생했는데요. 다음과 같이 처리함으로써 해당 문제를 해결할 수 있습니다.

 

▼ 다음은 해당 xcframework 들입니다. 문제가 되는 sdk.xcframework 폴더로 들어가보겠습니다.

문제가 되는 xcframework


 

 

 ios-arm64 폴더로 들어갑니다. arm64 simulator의 경우 잘 동작하기 때문에 별 다른 작업을 하지 않습니다.

ios-arm64 폴더


 

 

 

 

 다양한 파일들이 있지만 그중에 Framework라는 폴더를 볼 수 있습니다.

xcframework 내부


 

 

 

 그 안에 들어가면 다음과 같이 중복된 framework 파일들을 볼 수 있습니다. 문제가 되지 않는다면 Frameworks 폴더 자체를 지우고 다시 빌드해줍니다.

중복된 프레임워크 확인


 

지금까지 xcframework 에서 문제가 되는 중복 프레임워크를 제거하는 방법을 알아보았습니다. 이제 앱스토어에 등록이 잘되더군요. 애플 앱스토어에 업로드하려면 기본적으로 중복된 프레임워크를 허용하지 않습니다.

반응형

댓글

Designed by JB FACTORY