Xcode에서 프로젝트를 보관하면 다중 응용 프로그램 번들이 잘못 생성됩니다
Xcode에서 프로젝트를 보관하면 릴리스를 위해 주요 대상을 번들로 묶는 대신 다중 응용 프로그램 번들을 만들고 있습니다. 특히 Organizer에서 내 아카이브의 유효성을 검사하면 다음 메시지가 표시됩니다.
"[프로젝트 이름]에 단일 번들 애플리케이션이 없거나 여러 제품이 포함되어 있습니다. 다른 아카이브를 선택하거나 단일 번들 애플리케이션을 작성하도록 구성표를 조정하십시오."
구성표에 조정이 필요한 설정이있는 것처럼 들리지만 다른 대상을 포함시키는 원인을 알 수 없습니다.
그건 그렇고 Xcode 4.0을 사용하고 있습니다.
좋아, 내 자신의 질문에 대답. XCode 4의 종속 프로젝트에 문제가있는 것으로 나타났습니다.이 경우 모든 종속 프로젝트 (예 : 정적 라이브러리)에 대한 빌드 설정을 진행하고 "배포"의 "설치 건너 뛰기"옵션이 설정되어 있는지 확인하십시오 예.
자세한 내용은 여기 : http://flakasoft.com/developer-tips/xcode-4-bug-solution-for-archiving-build-with-static-library/
이 문제를 해결하려면 하위 프로젝트에서 두 가지 사항을 수정해야합니다.
- Jared가 발견 한대로 빌드 설정에서 "설치 건너 뛰기"를 "예"로 설정하십시오.
- 빌드 단계에서 헤더 복사 섹션을 확인하십시오. 비공개 또는 공개로 나열된 헤더 파일이 있으면 프로젝트 섹션으로 끌어다 놓습니다.
나는 그것이 나를 위해 작동하도록 다음을 수행했다.
- three20 정적 라이브러리의 경우, 메인 프로젝트 내에 파일을 포함 시키기 위해 cocoapods 를 사용 했습니다 .. 그냥 three20이 나에게주는 모든 문제를 제거했습니다. (그리고 그것들은 많이 있습니다.) btw 나는 three20을 Nimbus 로 바꾸려고 시도했습니다 .. 그러나 Nimbus 프로젝트에서 three20을 사용했던 일부 기능이 부족했습니다. 그래서 Nimbus는 도움이되지 않았습니다.
- 다른 모든 하위 프로젝트 / 정적 라이브러리의 빌드 설정에서 skip install을 yes로 설정하고 빌드 단계에서 복사 헤더를 공개에서 프로젝트로 전환
- 대부분의 중요한 : 하위 라이브러리에서 .. 빌드 단계에서 그 보장 복사 파일의 목적지가 변경되었습니다
Absolute path
에products directory
.
그게 다야!
힌트 : 아카이브가 ipa가 아닌 아카이브 파일을 작성하게하는 문제가있는 파일에 대한 아이디어를 얻으려면 다음 을 수행하십시오.
- 아카이브를 선택하고 배포 버튼을 클릭하십시오.
- '내장 제품 저장'옵션을 선택하십시오.
- 다음을 누르고 저장하십시오.
- Finder에서 생성 된 디렉토리를 탐색하십시오.
- 'libraries'서브 디렉토리는 건너 뛰기 설치를 예로 설정해야하는 라이브러리를 식별합니다.
- 경우에 따라
usr/local/include
공개에서 프로젝트로 이동해야하는 범인 헤더 파일 또는 절대 경로에서 제품 디렉토리로 변경해야하는 파일을 식별 할 수 있습니다. 그러나 해당 디렉토리 (예 : usr / local / include)는 서브 라이브러리 디렉토리 구조에 따라 다릅니다.
잊어 버린 복사 파일 빌드 단계가 있습니다 (일부 글꼴을 ~ / Library / Fonts로 복사했습니다). 이 빌드 단계를 제거한 후에는 정상적으로 작동했습니다.
위의 방법으로도 문제가 해결되지 않으면 아카이브를 파인더로 내보내고 .app 번들 외부에있는 것을 살펴 보는 것이 좋습니다.
편집 : https://github.com/RestKit/RestKit/wiki/Xcode-4-Archiving-Issue:--'Does-not-contain-a-single-bundle '을 참조 하십시오.
"[프로젝트 이름]에 단일 번들 응용 프로그램이 포함되어 있지 않거나 여러 제품이 포함되어 있습니다. 다른 아카이브를 선택하거나 구성표를 조정하여 단일 번들 응용 프로그램을 만드십시오." xcode5로 업그레이드 한 후
문제는 '릴리스'에 대한 빌드 설정의 여러 필드가 비어 있다는 것입니다. xcode4가 자동으로 디버그 설정으로 전환 된 것 같습니다.
anwyays-내 수정은 비어있는 모든 '릴리스'설정을 찾아 디버그 설정으로 설정하는 것이 었습니다. 특히 Info.plist 파일 설정이었습니다.
'Programming' 카테고리의 다른 글
열거 형을 null로 설정하는 방법 (0) | 2020.05.25 |
---|---|
터미널에서 커서 속도를 어떻게 높일 수 있습니까? (0) | 2020.05.25 |
Android 에뮬레이터 오류 메시지 : "PANIC : 'x86'CPUS에 대한 에뮬레이터 엔진 프로그램이 없습니다." (0) | 2020.05.25 |
JSON을지도로 변환 (0) | 2020.05.25 |
엔티티를 계산하는 코코아 코어 데이터 효율적인 방법 (0) | 2020.05.25 |