문제

내 앱의 임시 빌드를 만들었고 다른 사람이 설치하기를 원합니다. 프로비저닝 프로파일에 장치 ID (실제로 두 개)가 있습니다. 내 인증서는 Ad Hoc 및 App Store Provisioning과 동일합니다. 인증서는 Keychain에서 유효합니다. 이 빌드의 Xcode에서 Ad Hoc 프로파일을 선택했는데,이 빌드는 배포 인증서에 연결되어 있습니다.

사용자에게 프로비저닝 파일과 .app 파일을 보냅니다. 그들은 iTunes에 삭제하고 동기화 한 다음 두 장치 에서이 오류를 얻습니다.

The application "myapp" was not installed on the iPhone "user's iPhone" because the signer is not valid.

iPhone에서 모든 프로필을 제거하고 위의 두 파일을 iTunes에 삭제하고 동기화하고 앱을 성공적으로 설치했습니다. 나는 그것을 나를 위해 재현 할 수 없다. 문제를 파악하기 위해이 문제를 현지에서 재현해야합니다. 어떻게 할 수 있는지 아이디어가 있습니까?

도움이 되었습니까?

해결책

자격을 추가 했습니까? 서명을 프로젝트 수준이 아닌 목표 수준에 두십시오. 임시 프로필을 선택 하시겠습니까? 빌드 전에 깨끗합니까? Ad Hoc 장치를 선택하여 빌드를 선택 하시겠습니까?

가장 좋은 방법은 Apple의 문서를 따르는 것입니다 바로 그거죠, 빌드 설정을 얻으십시오 바로 그거죠 애플의 일치.

다른 팁

imbedded.mobileprovision 파일을 .App 파일에 번들로 확인하여 UID가 있는지 확인하는 것이 좋습니다. 다음을 수행하십시오.

  1. zip 문제 문제 appleapp.ipa
  2. CD 페이로드/문제 app.app
  3. 피코 imbedded.mobileprovision

이 파일 내에서 장치의 UID를 찾으십시오. 존재하지 않으면 포털 내 프로비저닝 파일에 추가되지 않을 수 있습니다.

문서에서 :

임시 배포를위한 앱을 구축하는 것은 두 가지 추가 단계를 제외하고 App Store 배포 용 앱을 구축하는 것과 유사합니다. 먼저, 임시 배포 프로비저닝 프로파일을 작성하고 iPhone 개발자 프로그램 프로비저닝 포털을 사용하여 배포하려는 iOS 장치의 UDID를 추가해야합니다. 둘째, 코드 서명 자격 파일을 만들어야합니다. 자격 파일 작성 방법에 대한 정보는 iOS 개발 안내서의 관리 응용 프로그램 자격 섹션을 읽으십시오.


응용 프로그램 자격 관리

iOS는 특수 리소스 및 기능 (응용 프로그램 디버깅 할 수 있는지 여부와 같은 특수 리소스 및 기능에 대한 액세스를 제공합니다. 응용 프로그램에 자격 정보를 지정하려면 프로젝트에 자격 정의 (키/값 쌍)가 포함 된 자격 속성 목록 파일을 추가합니다. 응용 프로그램을 빌드 할 때 Xcode는 파일을 생성 된 응용 프로그램 번들에 복사합니다.

프로젝트에 자격을 갖춘 속성 목록 파일을 추가하려면 다음과 같습니다.

그룹 및 파일 목록에서 리소스 그룹을 선택하십시오. 파일> 새 파일을 선택하십시오. iOS> 코드 서명> EntitLements 템플릿을 선택하십시오. 파일 untitlements.plist의 이름을 지정하십시오. (모든 이름을 사용할 수 있습니다.이 섹션의 뒷부분에서 설명한대로 코드 서명 자격 제작 설정의 값과 일치하는지 확인하십시오.) 속성 목록 파일의 유형을 iPhone 자격으로 설정하십시오. 텍스트 편집기에서 파일을 선택한 경우보기> 속성 목록 유형> iPhone 자격을 선택하십시오.

파일에 자격 항목을 추가하십시오. 각 자격 속성에 대해 다음은 정의해야합니다.

자식 추가를 클릭하거나 선택한 행의 오른쪽에 형제 버튼을 추가하십시오. 자식 추가 버튼에는 계층 구조를 나타내는 3 개의 줄이 있으며, 추가 버튼에는 플러스 (+) 표시가 있습니다. 나타나는 팝업 메뉴에서 자격 속성을 선택하십시오. 추가해야 할 자격이 메뉴에 표시되지 않으면보기> 속성 목록 유형> 파일 유형의 기본값을 선택하십시오. 그런 다음 자격 키 이름과 유형을 입력하십시오.

속성의 값을 입력하십시오. 코드 서명 자격을 설정하여 대상에 대한 빌드 설정을 새로 추가 된 자격 부동산-목록 파일의 이름으로 설정하십시오.


자격 파일을 생성하고 코드 서명 자격 제작 설정에 추가 한 후에는 자격 파일을 열고 Task-allow Key를 추가하거나 편집하여 False로 설정하십시오.

.app 번들을 압축하여 광고 빌드를 테스터 등에 배포하는 것 외에도 특정 이메일 클라이언트와 서버가 프로비저닝 프로파일을 손상시킬 수 있으므로 배포하기 전에 프로비저닝 프로파일을 압축하는 것이 좋습니다.

임시 배포에 대한 자세한 내용은 iOS 개발 안내서의 테스트 섹션 게시 응용 프로그램을 읽으십시오.

최근에 최근 빌드에서 한 테스터와 함께이 문제를 해결했습니다. 테스터가 iPod 터치를 재설정하고 프로세스에서 프로비저닝 프로파일을 제거한 것으로 나타났습니다.

고려해야 할 것이 있습니다.

다른 사람이 게시 한 것보다 멍청한 일을 함으로써이 오류가 발생했습니다. 프로필에 새 장치를 추가했지만 업데이트 된 버전을 다운로드하고 Xcode에 추가 한 다음 프로젝트를 가리키는 것을 잊었습니다. 제대로 설정하면 테스터가 앱을 잘 설치할 수있었습니다.

다음은 또 다른 재미있는 것입니다 .... iPhone 및 iPad에 대한 별도의 자격 파일이 있다면 각 특정 빌드의 파일 대상을 설정하십시오 ... 그렇지 않으면 빌드에 표시되지 않으면이 점을 얻을 수 있습니다. 오류

나는 OP와 같은 문제가 있었기 때문에 여기에 도착했습니다. Xcode Organizer에서 새로 고침을 사용했다고 확신하더라도 자격 파일에 UDID가 없었습니다. 또 다른 새로 고침은 차이가 없었습니다.

결국 나는 모든 프로비저닝 프로파일을 제거했습니다 그 다음에 새로 고침을했습니다. 이제 일이 작동합니다.

이것이 내 설정의 결함인지 또는 연산자 오류인지 전혀 모른다. 그러나 다른 사람 이이 상황에서 자신을 찾는 경우를 대비하여, 프로비저닝 프로필을 제거한 다음 새로 고침을 수행 할 수 있습니다.

이것은 iOS 3.1.3을 실행하는 iPhone 3G에서는 효과가 없습니다. Settings-> General을 보면서 배포 프로필이 전화에 있지 않은지 확인했습니다 (프로필 옵션이 나열되어 있음).

그런 다음 iPhone 구성 유틸리티를 설치했습니다.

http://support.apple.com/kb/dl851

그 다음에:

  1. iPhone 구성을 실행하십시오
  2. app에 mobileprovision 파일을 드래그 앤 드롭
  3. 왼쪽에서 장치를 클릭하십시오
  4. "프로비저닝 프로필"탭을 클릭하십시오
  5. 프로필을 클릭 한 다음 "설치"버튼을 클릭하십시오.

그런 다음 앱이 잘 설치되었습니다.

나도 OP와 같은 문제가있었습니다. 멍청한 실수 : 실수로 기기로 등록했을 때 HOC 배포를 임시로 배포하려는 장치에서 마지막 두 자리를 떨어 뜨 렸습니다.

나는 같은 문제가 두 번 받았다 ( xcode 4.2 ios 5)

첫째, 아키텍처에 ARMV6을 추가하는 것을 잊었습니다.

둘째, 번들 식별자 사용에 따라 다른 키 체인을 삭제 해야하는 동일한 개발자 ID를 가진 많은 프로비저닝 파일에 생성 한 시간 ... 그리고 실수로 유효하고 다른 kechain을 사용했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top