Xcode- 오류 ITMS-90635- 아름다운 Mach-O-App Store에 출시
앱 스토어에 앱을 출시 할 때이 오류가 발생했습니다.
모든에 대해 ENABLE_BITCODE를 설정해야 함을 의미합니까? 나는 그것을 시도했지만 비트 코드 (또는 이와 유사한 것)와 없음
오늘 아침 일찍 같은 문제가 발생했습니다. 모든 대답은 "플랫폼의 모든 대상이 ENABLE_BITCODE 빌드 설정에 대해 일관된 값을 가지고 있는지 확인합니다."라는 오류에 있습니다.
ENABLE_BITCODE가 YES로 여러 포드를 사용하여 대상 (ENABLE_BITCODE가 NO로 설정 됨)이 있습니다. 그래서 제가해야 할 일은 프로젝트 대상에서 ENABLE_BITCODE를 YES로 설정하는 것뿐입니다. 하지만 선택의 여지가 생각합니다. 사용중인 모든 라이브러리에서 ENABLE_BITCODE를 사용할 수 없습니다.
가장 일반적인 일반적인 수정 :
Xcode를 통해 앱을 출시 할 때 "Include Bitcode"를 선택 취소 할 수 있습니다. 
를 사용 하는 경우 값이 false 로 설정된 exportOptionsPlistxcodebuild 전달을 사용할 수 있습니다 . 제 경우에는 ( 를) 사용하여 앱을 빌드 하고 많은 수있는 기능이 없기 때문에 모든 프레임 워크에서 비트 코드를 제거해야합니다.uploadBitcodexctoolexportOptionsPlist
누군가 cocoapods를 사용하는 중이고 프레임 워크에 대한 비트 코드를 사용하려는 경우 podfile에 다음을 추가하면됩니다.
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ENABLE_BITCODE'] = 'NO'
end
end
end
https://stackoverflow.com/a/32685434/1417922를 통해
이 문제에 대해 좀 더 설명을 추가 비용 :
적용하기 적용하기 기본 바이너리에 비트 코드가 활성화되어 비트 코드가 활성화 된 정적 라이브러리 또는 프레임 워크를 포함하는 경우 유효성 검사에 실패합니다. 다른 방식으로도 진행됩니다. 기본 바이너리에 비트 코드가 활성화되어 비트 코드가 포함 된 라이브러리 / 프레임 워크를 포함하면 유효성 검사에 실패합니다.
저는 GoogleMaps와 Amazon의 몇 가지 가지가있어 비트 코드를 활성화하기 위해 모든 것을 전환하는 것이 사소한 일이 아니 었거나 간단히하고 프로젝트에서 하나의 정적 라이브러리에서 코드를 제거했습니다. 다음 명령을 사용하여 바이너리에서 비트 코드를 제거 할 수 있습니다.
$ xcrun bitcode_strip -r {Framework}.dylib -o tmp.dylib
$ mv tmp.dylib {Framework}.dylib
위의 내용이 문제에 대한 해결책이지만, 기본 바이너리에 비트 코드가 포함되어있는 경우 포함 된 모든 바이너리에도이를 필요로한다는 데 동의하지 않습니다. 비트 코드는 애플이 앱 씬닝에 사용할 수있는 IR 코드 일뿐입니다. 다른 바이너리에서 비트 코드를 제거하지 않는 이유는 무엇입니까 (이전에 수행 한 작업이라고 가정합니다)? 이것은 나에게 의미가 없습니다.
애플 공식 https://forums.developer.apple.com/thread/48071
방금 "비트 코드 포함"을 선택 취소하고 업로드하기 시작했습니다.
카르타고를 위해
- 프로젝트 폴더 (Carthage-> Checkouts-> [lib name])에서 라이브러리를 다.
- 그런 다음 Xcode에서 각 lib를 여러 다.
- 비트 코드 활성화 설정-빌드 설정에서 아니오

- 수행하십시오.
- 카르타고 만들기
carthage build --platform xxx
그런 다음 다음으로 보관하고 Appstore에서 출시 할 수 있습니다.
지난 금요일 (2016 년 6 월 3 일)에서 "Xcode-Error ITMS-90635-Invalid Mach-O in bundle-submiting to App store"라는 오류가 지난 금요일 (2016 년 6 월 3 일)에서 발생했습니다. 아래에 언급 된 2 단계를 사용 하여이 작업을 완료했습니다.
1 단계 :
마크에 포드 파일에 코드를 추가 'ENABLE_BITCODE' = 'NO'포드에
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ENABLE_BITCODE'] = 'NO'
end
end
end
2 단계 : 프로젝트의 포드에
표시'ENABLE_BITCODE' = 'NO'
참고 : 마킹 시도 허용 'ENABLE_BITCODE' = 'YES'우리는 깃발이있는 호출하기위한 twillio 프레임 워크를 사용하는 것처럼 너무 내 프로젝트 포드와 더 -read_only_relocs많은 것을하지 않습니다 'ENABLE_BITCODE' = 'YES'. 그렇기 때문에 애플리케이션에서 플랫폼 워크를 사용하지 않는 경우 앱에 좋을 것 -read_only_relocs만들기 'ENABLE_BITCODE' = 'YES'를 계속할 수 있습니다.
"Enable BitCode"를 Yes로 설정 한 후 빌드 오류가 발생하는 경우. 모든 라이브러리를 업데이트합니다.하지만 가장 쉬운 부분은 Cocoapods를 사용하는 것이어야합니다 모든 pod 프로젝트를 업데이트하십시오 : (하나씩) 또는 모두
그런 다음 아카이브하기 전에 BitCode를 "아니오"로 설정하십시오.
그런 다음 아카이브 >> 업로드 >>이 오류를 전달합니다.
건배.
Xcode 7.3을 사용하는 내 CI에서 "ENABLE_BITCODE = YES"프로젝트와 "ENABLE_BITCODE = YES"종속성에 동일한 문제가 발생했습니다. 솔루션은 Xcode를 사용 가능한 최신 버전 (7.3.1)으로 업데이트했습니다.
'ProgramingTip' 카테고리의 다른 글
| 오류 : ': app : transformClassesWithDexForDebug'작업에 대한 실행이 실패했습니다. (0) | 2020.10.29 |
|---|---|
| 풀 요청에서 커밋을 제거하는 방법 (0) | 2020.10.29 |
| 클래스 메서드를 호출하면 Python에서 TypeError가 발생합니다. (0) | 2020.10.29 |
| Resharper 제거 -Visual Studio가 더 이상 올바른 오류 강조 표시를 표시하지 않습니다. (0) | 2020.10.29 |
| 16 비트, 32 비트 및 64 비트 IEEE-754 시스템에서 어떤 범위의 숫자를 가지고 있습니까? (0) | 2020.10.29 |
