Xcode 11.2-장치에 앱 파일을 설치할 수 없습니까?


29

최근에 OS를 Catalina로 업데이트하고 Xcode를 11.2로 업데이트했습니다. 그렇게 한 후 장치에서 내 앱의 릴리스 버전을 실행하려고하면 오류가 발생합니다.

앱을 설치할 수 없습니다.

'세부 사항'을 누르면 다음과 같은 정보가 제공됩니다.

응용 프로그램 설치 실패 도메인 : com.apple.dtdevicekit 코드 : -402620395 실패 이유 :이 실행 파일에 대한 유효한 프로비저닝 프로파일을 찾을 수 없습니다.

사용자 정보 : {DVTRadarComponentKey = 487927; "com.apple.dtdevicekit.stacktrace"= (0 DTDeviceKitBase 0x000000011baff6e7 DTDKCreateNSError 109 + 1 DTDeviceKitBase
0x000000011baffde9 DTDK_AMDErrorToNSError은 792 + 2 DTDeviceKitBase의
0x000000011bb3f56a 90- [DTDKMobileDeviceToken installApplicationBundleAtPath : withOptions : andError : withCallback :] _ block_invoke + 164 3 DVTFoundation 0x000000010356f156 DVTInvokeWithStrongOwnership + 73 4 DTDeviceKitBase
0x000000011bb3f301 - [DTDKMobileDeviceToken installApplicationBundleAtPath : withOptions : andError : withCallback :] + 1,589 5 IDEiOSSupportCore 0x000000011b9c7a25 __118- [DVTiOSDevice (DVTiPhoneApplicationInstallation) processAppInstallSet : appUninstallSet : InstallOptions에 : completionBlock :] _ block_invoke.352 + 6 4523 DVTFoundation 0x00000001036a03ba __DVT_CALLING_CLIENT_BLOCK
+ 7 7 DVTFoundation 0x00000001036a1a92 __DVTDispatchAsync_block_invoke + 809 8
libdispatch.dylib 0x00007fff68220583 _dispatch_call_block_and_release + 12 9 libdispatch.dylib 0x00007fff6822150e _dispatch_client_callout + 8 10 libdispatch.dylib 0x00007fff68226ace _dispatch_lane_serial_drain + 597 11 libdispatch.dylib 0x00007fff68227452 _dispatch_lane_invoke + 363 12 libdispatch.dylib 0x00007fff68230a9e _dispatch_workloop_worker_thread + 598 13 libsystem_pthread.dylib 0x00007fff6847a71b _pthread_wqthread + 290 14 libsystem_pthread. dylib 0x00007fff6847a57b start_wqthread + 15); }

인증서와 마찬가지로 프로비저닝 프로파일이 100 % 정확합니다. 왜 이런 일이 일어나고 있는지 전혀 알지 못하며 설치 / 실행하기 위해 모든 것을 시도했습니다. 난 노력 했어:

  • '실행'탭에서 '구성표'가 릴리스 확인되었는지 다시 확인
  • 올바른 프로비저닝 프로파일이 선택되었음을 확인했습니다.
  • 기기에서 앱 제거
  • 새로운 프로비저닝 프로파일 생성
  • 번들 ID 변경
  • 새 인증서 생성
  • 빌드 폴더 정리, Xcode 재시작
  • Xcode 재설치
  • 파생 데이터 폴더 삭제

위의 어느 것도 효과가 없습니다. 나는 이틀 동안이 일을 해왔다-도움에 감사드립니다. 앱 파일을 장치에 성공적으로 설치할 수있는 유일한 방법은 먼저 파일을 TestFlight에 업로드하는 것입니다.


두 번째 장치로이를 확인할 수 있습니까?
CodeBender 19

예, 두 가지 다른 장치에 앱을 설치하려고했는데 매번 같은 오류가 발생했습니다. @CodeBender
Brittany

1
최근에 11.2로 업데이트했다고 언급했는데, 이것이 Xcode 11.x로 처음 구축 한 것입니까? Apple 개발자 사이트의 배포 프로파일에는 Xcode 11에만 해당되는 새로운 옵션이 있으며 사용하고 있습니까?
CodeBender 19

1
또한 "빌드 시스템"의 파일> 작업 공간 설정에서 무엇을 선택 했습니까?
shim

1
그것은 나를 미치게한다 !!! 나는 여전히이 문제가 있으며 여기에서 해결 한 해결책이 없습니다. 다른 아이디어가 있습니까?
Georg

답변:


19

파일-> 작업 공간 설정으로 이동하여 빌드 시스템이 레거시 빌드 시스템으로 설정되어 있는지 확인하십시오.

Catalina와 Xcode 11.2에서 동일한 문제가 발생하여 해결되었습니다.

Xcode 11부터 Apple은 .ipa 추출 및 장치 빌드에서 AppStore 빌드에만 필요했던 빌드 기준 중 일부를 시행하기 시작했습니다.

지금까지 나는 만났다 :

  • 이전 프로젝트 또는 이전 프레임 워크를 사용하는 프로젝트의 장치 배포를 위해 위의 레거시 빌드 시스템 설정 필요
  • 아카이브에서 ipa를 추출하기 위해 사용하지 않는 아키텍처 제거

아마도 같은 문제입니다-약간 다른 오류가 있지만 여기에서 해결 된 해결책은 없습니다. 실행 파일에 잘못된 권한이 서명되었습니다. 도메인 : com.apple.dtdevicekit 코드 : -402620394 실패 이유 : 응용 프로그램의 Code Signing Entitlements 파일에 지정된 권한이 잘못되었거나 허용되지 않거나 프로비저닝 프로파일에 지정된 권한과 일치하지 않습니다. (0xE8008016).
drewster

2
@drewster 나도 같은 오류가 있었고 빌드에서 사용되지 않은 아키텍처와 관련이있었습니다. 때때로 프레임 워크는 arm 아키텍처를 넘어 x86 아키텍처를 지정합니다. 이 SO 기사에 지정된 스크립트를 실행하면 문제가 해결되었습니다.
린 반 Heerden

2
기존 빌드 시스템으로 변경하면 불행하게도 나를 위해 작동하지 않았다 /
브리트니

1
이것에 시간을 보냈다. 대상으로 만든 프레임 워크를 생성하는 프로젝트를 작업 영역에 추가했습니다. 그런 다음 작업 공간의 기본 프로젝트를 해당 프레임 워크 프로젝트에 포함 / 연결했습니다. 11.2.1 GM의 새 빌드 시스템을 사용하여 IN HOUSE를 내 보내면 감독 대상 장치에 "Could not install ..."이 표시됩니다. 이 게시물을 읽고 레거시 빌드 시스템으로 전환했습니다. 그게 뭐야 ERRORS !!! 보관할 때 lipo가 잘못된 아키텍처를 제거 할 수 없다고 말합니다. 그래서 올바른 방향을 가리키고 제대로 구축되지 않은 프레임 워크를 수정했습니다. 레거시 감사합니다!
zumzum

내 경우에는 레거시로 전환해도 해결되지 않았습니다. 프로비저닝 프로파일이 변경 되었기 때문입니다. 장치에서 앱을 삭제 한 후 설치가 완료되었습니다.
Konstantinos


5

자동 서명 관리 사용

이 문제를 해결하십시오.

자동 서명 확인


5

나에게 그것은 응용 프로그램에 추가 한 Dynamic Frameworks 때문입니다. 처음에는 동적 프레임 워크에 대해 (포함 + 서명하지 않음) 옵션을 선택했습니다.

그러한 프레임 워크에 대해 (Embed & Sign)으로 변경하면 문제가 해결되었습니다.

여기에 이미지 설명을 입력하십시오


"Embed Without Sign"으로 외부 프레임 워크를 추가 한 것과 같은 문제가있었습니다. Embed & Sign으로 변경했습니다.
21:48에

3

처음 청소할 때이 문제를 해결합니다.

cmd + k
shift + cmd + k

그런 다음 Deriving Data의 모든 내용을 삭제합니다. 폴더의 경로는 다음과 같아야합니다

/Users/youruser/Library/Developer/Xcode/DerivedData

또는 당신은 그것을 확인할 수 있습니다

Xcode -> Preferences -> Locations

0

이 솔루션을 찾을 때까지 같은 문제가 발생했습니다 . 이전의 모든 인증서와 프로비저닝 프로파일을 모두 지우고 "iOS ..."옵션 대신 "Apple Development"및 "Apple Distribution"을 사용하여 새 인증서를 작성해야했습니다.


0

나는 같은 문제가 있고 문제는 무료 계정을 사용하고 있었고 총 무료 개발 프로필 수에 도달했기 때문에 유료 계정을 사용해야한다는 것입니다

세부 사항 :

실패 이유 : 무료 개발 프로파일의 최대 앱 수에 도달했습니다.


나는 같은 문제가 있었다. 나는 디테일을 읽고 나중에 깨달았다
candyline

0

라이브러리 Embed FrameworksCode Sign on Copy체크되지 않은 프로젝트를 실행할 때이 오류가 발생했습니다 . 이를 확인 표시하면이 문제가 해결되었습니다.


0

"-402620395 실패 이유 :이 실행 파일에 대한 유효한 프로비저닝 프로파일을 찾을 수 없습니다."

나는이 문제도 가지고 있었고 그것을 해결했다.

이는 프로비저닝 프로파일이 개발로 설정되지 않았 음을 의미합니다. 배포 용 프로파일 세트와 다른 개발 용 새 프로비저닝 프로파일을 작성해야합니다. 그런 다음 서명 및 기능에서 xcode의 앱 설정에서 장치에 설치하려면 개발 프로필을 선택하십시오. 개발자 프로필로 배포하는 것에 대해 걱정하지 말고 앱 스토어로 푸시 할 때 사용할 프로필을 선택해야합니다 (없음으로 설정되어 전환해야 함).

다른 솔루션은 로그인 설정을 자동으로 관리하도록 선택하는 것이지만 원하지 않는 앱 스토어로 푸시 할 때 기본값이 설정되어 있습니다.


-1

2019 년 11 월 5 일 Apple에서 Xcode 11.2를 사용하지 않음

기기에 설치할 수 있어도 AppStore를 전달할 수 없습니다. 로그는 여기를 참조하십시오.

유효한 최신 AppStore 버전 xip 파일 다운로드 하십시오.

시사

Xcode 11.2에는 몇 가지 문제가 있으며 이전 iOS 장치 와 충돌 하며 최신 iOS 장치에는 설치되지 않습니다. 그래서 지금 당신은 할 수 있습니다 :

따라서 해결책은 다음과 같습니다.

  1. macOS를 10.15.1로 업데이트
  2. Xcode 11.2.1 GM 시드 설치
  3. 업데이트 된 장치에서 앱을 빌드하고 설치하십시오 (13.2.2는 현재 지원되지 않습니다)

Xcode 11.2.1 GM seed를 지금 다운로드하는 중 ... 문제가 해결되는지 알려 드리겠습니다. Xcode 11.2를 사용하여 미친 약을 복용하는 것처럼 느껴지기 시작했습니다.
Brittany

2
연결된 SO 게시물을 기반으로 충돌이 발생한 iOS 13 이전 장치와 관련이 있습니다 UITextView. "최신 iOS 장치"의 설치 문제에 대한 내용은 없습니다
shim

애플이 혼란을 일으킨 이후 그 게시물에는 많은 링크가 포함되어있다. @shim이지만 이제 apple은 문제를 받아들이고 Xcode 11.2를 완전히 사용하지 않으며 AppStore에서 제거했습니다.
Mojtaba Hosseini

3
이 답변은 문제와 관련이 없으며 Xcode 11.2.1을 사용하여 앱 배포를 테스트했지만 문제가 계속 지속되었습니다. Xcode 11.2.1을 사용하여 장치에 앱을 배포 할 수있는 유일한 방법은 "파일-> 작업 영역 설정-> 빌드 시스템"을 "레거시 빌드 시스템"으로 설정하는 것입니다.
Lean van Heerden

@Brittany 결과는 무엇입니까? 작동 했습니까?
Mojtaba Hosseini

-1

이 문제는 코드 서명 과 만 관련이 있습니다.

그러나 XCode 11.x 버전을 사용하는 경우 여기서 주목할 점이 있습니다. 프로젝트의 코드 서명뿐만 아니라 타사 SDK 또는 프로젝트에 추가 한 종속성의 코드 서명을 확인해야합니다.

타사 SDks의 코드 서명을 확인하는 단계 :

  1. 필요한 프레임 워크의 소스 코드 다운로드
  2. XCode 11.x를 사용하여 소스 코드에서 .xcproj 파일을여십시오.
  3. 대상-> 서명 및 기능-> 모든 탭 선택-> 번들 식별자로 이동하십시오. 식별자와 같이 식별자에 불균일이 있으면 구분 기호가 4 개인 식별자 (예 : com.company.mac.app)

    com. *로 변경 하고 입력하십시오.

  4. XCODE COMMAND LINE TOOLS가 XCode 11.x로 설정되어 있는지 확인하십시오

  5. 이제 아래 명령을 사용하여 위의 3 단계에서 변경 한 내용으로 SDK를 다시 빌드하십시오.

      carthage build --no-skip-current --cache-builds --platform iOS
  6. 이제 소스 코드의 carthage 폴더 에서 생성 된 프레임 워크를 복사하고 프로젝트의 기존 SDK를 바꾸십시오.

프로젝트의 모든 타사 SDK에 대해 동일한 과정을 반복하십시오.

참고 : 모든 타사 SDK를 포함 및 로그인 으로 표시했는지 확인하십시오 .

Targets => General => Frameworks, Libraries, and Embedded Content

-1

배포 / 릴리스 구성표가 실행 중일 수 있습니다. 디버깅하도록 스키마를 변경하면 나에게 효과적입니다. 이것이 누군가를 돕기를 바랍니다.

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.