[ios] Codesign 오류 : 만료 된 프로파일을 삭제 한 후 프로비저닝 프로파일을 찾을 수 없습니다

어제 작동하던 앱을 다시 만들려고했습니다. 프로파일이 만료되었다는 메시지가 표시되어 iPod 및 iTunes에서 제거했습니다. 새 프로파일 (식별자에 *가있는 프로파일)을 선택하면 오류가 발생합니다.

코드 서명 오류 : 프로비저닝 프로파일 (긴 문자열)을 찾을 수 없습니다.

내가 무엇을 놓치고 있습니까? 관련 질문을 살펴본 결과이 시나리오를 아직 보지 못했습니다.



답변

xcode 프로젝트 파일이 엉망이되는 경우가 있습니다. 특히 오래된 프로젝트가 있고 이전 버전의 xcode / iphone sdk로 생성 한 경우 특히 그렇습니다. 당신이해야 할 일은 텍스트 편집기에서 프로젝트 파일을 열고 오류에서 ‘긴 문자열’을 검색하고 해당 줄을 수동으로 지우는 것입니다. 실제로 프로비저닝 프로파일을 가리키는 모든 라인을 지워야합니다. 그런 다음 xcode에서 프로젝트를 다시 열고 설정으로 이동하여 새 프로필을 다시 선택하십시오. 이를 통해 대부분의 경우 이와 같은 문제가 해결됩니다. 프로비저닝 프로파일을 가리키는 라인은 다음과 같습니다.

PROVISIONING_PROFILE = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";


답변

나를 위해 일했고 프로젝트 파일을 수동으로 편집 할 필요가없는 간단한 솔루션이 있습니다.

XCode의 “그룹 및 파일”창에서 “대상”을 확장하고 앱의 대상을 두 번 클릭하십시오. 그러면 대상에 대한 정보 창이 나타납니다. “빌드”섹션에서 이전 프로파일에 대한 “코드 서명”섹션을 확인하고 올바른 프로파일로 바꾸십시오.

이는 프로젝트 아이콘을 두 번 클릭하고 프로필을 변경하는 것과 다릅니다. 아주 놀라운 🙂

오리


답변

  1. 프로젝트 및 대상 속성-> “코드 서명하지 마십시오”-> 확인-> cmd + S (또는 cmd + B);
  2. 프로젝트 및 대상 속성-> “프로 비전 프로필”-> 확인

  3. 모든 것이 다시 작동합니다!


답변

Brad의 대답에 동의합니다. 대상 / 프로젝트를 직접 편집하고 다음과 같은 줄을 삭제 하여이 문제를 해결할 수 있습니다.

PROVISIONING_PROFILE = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";

그러나 Xcode 4.2 이상에서는이 텍스트에 액세스하여 선택하고 삭제할 수있는 훨씬 쉬운 방법이 있습니다. 왼쪽의 프로젝트 네비게이터에서 프로젝트 (프로젝트 네비게이터의 맨 위 줄)를 선택하십시오. 이제보기> 버전 편집기> 버전 편집기 표시를 선택하십시오. 그러면 프로젝트가 텍스트로 표시되고 Xcode의 편집기 창에서 PROVISIONING을 검색하고 번거로운 줄을 삭제할 수 있습니다.


답변

이 문제에 대한 변형을 보았습니다. 위의 Brad Smith의 노트에 따라 project.pbxproj 파일로갔습니다.이 경우 XPRO가 할 수 없었던 “나쁜”프로파일 문자열이 발생하지 않고 모든 PROVISIONING_PROFILE 줄이 올바른 것처럼 보입니다. 찾을 수 없습니다.

그러나 해결 방법은 동일합니다. 이론적으로 “양호한”것처럼 보이더라도 project.pbxproj의 모든 PROVISIONING_PROFILE 줄을 삭제 한 다음 XCode에서 프로젝트를 다시여십시오.


답변

터미널에서 Brad의 솔루션을 완전히 달성하려면 다음 명령을 사용하십시오.

  1. cd [Xcode project parent]
  2. vi [Xcode project name].xcodeproj/project.pbxproj
  3. /[offending provisioning profile] [Enter]
  4. dd -전체 줄을 삭제
  5. 더 이상 찾을 때까지 n을 누르십시오
  6. 저장 후 닫으려면 Ctrl + x

답변

제 경우에는 Window-> Organizer를 열고 장치를 선택하고 오른쪽의 “Provisioning”패널에서 이전 프로비저닝 프로파일을 제거하여 문제를 해결했습니다. 오래된 것은 이미 빨간색 “x”기호로 표시되었지만 iPhone은 여전히 ​​사용하고 있습니다.

그 프로파일 외에도 새로운 프로파일 (같은 이름으로)이 나타 났으며 응용 프로그램을 다시 시작한 후 원활하게 실행했습니다.