programing

Xcode 6 - 애드혹 배포를 위한 서명 인증서/프로비저닝 프로필을 선택하는 방법?

oldcodes 2023. 6. 28. 21:58
반응형

Xcode 6 - 애드혹 배포를 위한 서명 인증서/프로비저닝 프로필을 선택하는 방법?

테스트 담당자에게 앱을 배포하기 위해 다음 프로세스를 사용하는 Xcode를 사용합니다.

  • 응용프로그램 보관
  • 애드혹용 배포
  • 프로비저닝 프로파일 선택
  • .ipa를 폴더에 저장합니다.

그러나 Xcode 6에서는 이 워크플로우가 약간 변경되었습니다.여전히 애드혹 배포 옵션을 선택할 수 있지만 원하는 프로비저닝 프로필을 선택할 수 없습니다.이렇게 하면 사용되는 서명 인증서와 프로비저닝 프로필 구성을 제어할 수 없습니다(푸시 알림 사용).

으로 기적으로iPhone distribution의 ID가 사용됩니다.XC Ad Hoc프로비저닝 프로파일이 생성됩니다. 이 프로파일은 아래 이미지에 표시됩니다.Exporting IPA프로비저닝 프로파일 근처의 화살표를 클릭하면 프로비저닝 프로파일이 있는 폴더가 열립니다.

그래서 제 질문은:

Xcode 6에서 애드혹 배포와 함께 사용되는 프로비저닝 프로파일을 선택할 수 있는 방법이 있습니까?

감사합니다!

Xcode 6과 함께 사전 설치된 명령줄 "xcodebuild" 도구 스크립트를 사용하여 해결한 동일한 문제에 직면했습니다(Xcode 5를 다시 설치할 필요가 없음).

http://www.thecave.com/2014/09/16/using-xcodebuild-to-export-a-ipa-from-an-archive/

터미널의 스크립트:

xcodebuild -exportArchive -archivePath $projectname.xcarchive -exportPath $projectname -exportFormat ipa -exportProvisioningProfile 'Provisioning Profile Name'

앱스토어에 제출할 때도 비슷한 문제가 있었습니다.저는 아카이브를 만든 다음 "제출"을 클릭했고 Xcode는 기본 "XCom"으로 자동으로 서명하기를 원했습니다.이미 가지고 있던 명시적 프로파일 대신 와일드카드 프로비저닝 프로파일이 필요로 합니다.

이 문제를 해결하기 위해 Apple Developer Portal에서 프로필을 다시 생성했습니다.

.apple.com하여 use..apple.com 에서 원하는 배포 .
선택한 후 "편집"을 누르고 프로파일의 이름을 변경한 후 "생성"을 누릅니다.
프로비저닝 프로파일을 바탕 화면에 다운로드하여 Xcode 6 아이콘으로 끕니다.
6Xcode 6을 시작합니다.
인 프로파일을 으로 선택합니다.Xcode는 일반 프로필 대신 사용자의 명시적 프로필을 자동으로 선택합니다.

Organizer에 들어가면

  • 애드혹 빌드를 선택하고 "내보내기..."를 클릭합니다."
  • 임시 배포를 위해 저장 -> 다음을 선택합니다.
  • 드롭다운에서 조직을 선택하는 대신 "로컬 서명 자산 사용" -> 선택
  • .ipa를 이전과 같이 내보내고 저장합니다.

물론 애드혹 프로비저닝 프로파일을 생성, 다운로드 및 설치해야 합니다.

지금은 마지막으로 생성된 프로비저닝 프로파일이 승리한 것 같습니다.그래서 당신은 당신이 원하는 프로필을 다시 생성하고 다운로드하면 Xcode가 그것을 사용할 것입니다.

조금 더 나은 접근법: 목표에 원하는 prov 프로파일을 설정하고 명령줄을 사용하여 ipa를 구축하는 것도 효과적입니다.

다음 스크립트를 사용합니다.

#!/bin/sh

# Current as working as of 2014/09/22
# Xcode 6

OUTPUTDIR="$HOME/build"
APPNAME="your-app"
SCHEME="your-app"
APP_WORKSPACE="$HOME/Path/To/your-app.xcworkspace"

rm "$OUTPUTDIR/$APPNAME.ipa" #deletes previous ipa
xcodebuild -workspace "$APP_WORKSPACE" -scheme "$SCHEME" archive -archivePath "$OUTPUTDIR/$APPNAME.xcarchive"
xcodebuild -exportArchive -exportFormat ipa -archivePath "$OUTPUTDIR/$APPNAME.xcarchive" -exportPath "$OUTPUTDIR/$APPNAME.ipa" 

및 내 설정:

Xcode settings

저도 이것을 이해할 수 없었습니다. 앱스토어에 제출할 때 와일드카드 프로필로 기본 설정되어 있었습니다.

저는 결국 Xcode 6에서 빌드한 다음 제출을 위해 Xcode 5의 Organizer 창으로 돌아갑니다.그러면 서명할 프로필을 선택하라는 메시지가 표시됩니다.

Xcode 6(최소 6.1 현재 사용 중)에서 애드혹에 대해 내보내기를 수행할 때 xcode 6은 개발자 계정에 등록된 모든 장치를 포함하는 프로비저닝 프로필이 있는지 동시에 번들 ID와 일치하는지 자동으로 검색합니다.그렇지 않은 경우 XC 프로비저닝 프로파일을 사용합니다.따라서 푸시 알림 등의 목적으로 자신의 프로필을 사용하려면 Apple Developer Portal에서 프로필의 모든 장치를 선택해야 합니다.그래서 어떤 사람들은 프로필을 다시 만들 수 있고 어떤 사람들은 그렇지 않을 것입니다.

btw, 스크립트를 사용하면 테스트 비행에 내보낼 수 있고 업로드할 수 있지만 장치는 다운로드할 수 없습니다. 아마도 제가 어디선가 틀렸을 것입니다. 이유를 아는 사람이 있다면 알려주십시오.tks

이것은 저에게 효과가 있었습니다.

  1. "View Accounts.."를 클릭합니다." 내에서...개발 팀을 선택합니다.대화 상자를 엽니다.
  2. "View Details.."를 클릭합니다.XC 애드혹 프로비저닝 프로필을 찾습니다.
  3. 해당 프로필을 마우스 오른쪽 단추로 클릭하고 "파인더에 표시"를 선택합니다.
  4. 선택한 프로파일을 삭제합니다.
  5. 1단계의 대화상자로 돌아갑니다.
  6. "선택"을 클릭합니다.
  7. 프로비저닝 프로파일 근처의 화살표를 클릭하여 프로비저닝 프로파일 디렉토리를 엽니다.
  8. 4단계와 같이 일반 프로필을 다시 삭제합니다.
  9. [애플로 [애플리케이션 이름] 보내기:] 대화상자에서 "이전" 버튼을 클릭합니다.
  10. 임시 배포용으로 저장을 다시 선택합니다.
  11. "선택" 버튼을 다시 클릭합니다.

이제 올바른 프로비저닝 프로필 이름이 표시됩니다.

이 문제에 대한 해결책이 있습니다.

Xcode 6과 Xcode 5.1.1이 모두 설치되어 있으며, Xcode 6은 Applications에 있고 Xcode 5.1.1은 다른 디렉토리에 있습니다.빌드를 수행하려면 Xcode 6을 사용하여 아카이브를 만듭니다.그러나 Xcode 5.1.1에서 생성된 아카이브도 볼 수 있으므로 Xcode 5.1.1을 사용하여 사용할 프로비저닝 프로파일을 사용하여 AdHoc.ipa를 배포합니다.따라서 Xcode 6을 사용하여 빌드하되 Xcode 5.1.1을 사용하여 배포합니다.

내보낼 때 로컬 서명 자산을 사용하여 문제를 해결했습니다.enter image description here

@Mr.Patol의 대답은 나에게 효과가 없었습니다.Xcode 6.3.2에 대한 내 작업 시나리오

회원 센터 -> iOS 프로비저닝 프로필

  • 앱을 빌드할 때 기본적으로 설정된 프로비저닝 프로파일(예: "XC...")을 삭제합니다.짧은 이름으로 운영이 아닌 애드혹 프로비저닝 프로파일을 생성합니다.

iPhone 구성 유틸리티 -> 프로비저닝 프로파일

  • 동일한 프로비저닝 프로파일 삭제(예: "XC...")

Xcode에서 -> Organizer

  • 애드혹 빌드를 선택하고 "내보내기..."를 클릭합니다. "애드혹 배포를 위해 저장" -> "다음"을 선택합니다.
  • 드롭다운에서 조직 선택
  • 새 임시 프로비저닝 프로필이 자동으로 선택되었는지 확인합니다.
  • .ipa를 이전과 같이 내보내고 저장합니다.

여기 제가 그 문제를 해결한 두 가지 핵심 사항이 있습니다.

  • 프로비저닝 프로파일을 생성할 때는 애플리케이션과 동일한 번들 식별자를 사용하는 명시적 애플리케이션 ID에 연결해야 합니다.와일드카드 앱 ID는 작동하지 않습니다.
  • 임시 배포를 위해 앱을 내보낼 때 드롭다운에서 로컬 서명 자산 사용을 선택하고 선택을 클릭합니다.

그런 다음 Xcode는 앱 ID를 앱의 번들 식별자와 일치시켜 올바른 프로비저닝 프로필을 찾습니다.

실제로 임시 배포용 배포 프로파일을 새로 만들어야 합니다.이것은 클래식 회원 센터에서 찾을 수 있지만, 새로운 유형의 인증서입니다.

그런 다음 개발자 프로필을 사용하는 것처럼 앱을 테스트하는 데 사용할 수 있는 장치를 선택할 수 있습니다.

또한 Organizer에서 일반적인 방법으로 패키지를 내보낼 때 새로 만든 인증서를 사용할 수 있습니다.

또는 iOS 8과 함께 Apple에서 제공하는 TestFlight 솔루션을 사용하여 사용자가 사전 릴리스에 액세스할 수 있도록 할 수 있습니다.

enter image description here

저도 같은 문제가 있었고, 마침내 저는 iOS Dev 계정에 등록한 모든 장치를 포함하여 Xcode 6에서 사용하고자 하는 프로필을 재생성하여 그렇게 했습니다. 내보내기를 선택하면 올바른 프로필이 표시되고 스크립트를 사용하지 않고 Xcode 6으로 애드혹 내보내기를 수행할 수 있습니다.도움이 되길 바랍니다.

저는 한동안 이것에 갇혀 있었지만 Crashlytics를 사용하여 해결했습니다. Xcode 프로젝트의 빌드 설정에서 선택한 프로파일을 사용하여 빌드를 배포합니다.

그게 누군가에게 도움이 되기를 바랍니다.

거의 같은 문제입니다.배포할 보관 파일을 만든 후(제품 > 보관) 보관 파일을 내보내고(내보내기... 클릭) "엔터프라이즈 배포용으로 저장"을 선택한 후 "다음"을 선택합니다.그런 다음 "개발 팀" 기본값(예: 조직 이름)을 선택하고 "선택"을 클릭합니다.마지막으로 Xcode가 자동으로 찾은 프로비저닝 프로필(즉각 생성 가능)을 나열하는 요약 보기가 제공됩니다.이는 잘못된 프로비저닝 프로파일(일반적으로 "XC: *"와 같은 와일드카드 프로비저닝 프로파일)일 수 있으며 개발자 포털에 와일드카드 프로비저닝 프로파일이 이미 있기 때문에 발생할 수 있습니다.와일드카드 프로비저닝 프로파일은 다른 이전 프로젝트에서 사용될 수 있으며 개발자 포털에서 와일드카드 프로비저닝 프로파일을 제거하는 것은 현명하지 않을 수 있습니다.

지원 티켓을 사용하여 https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/ConfiguringPushNotifications/ConfiguringPushNotifications.html #//apple_ref/doc/uid/TP40012582-CH32-SW1 링크만 받았습니다.별로 도움이 되지 않습니다.

저는 Patol 씨의 솔루션이 Enterprise Deployment에서도 작동하고 문제를 해결한다는 것을 알게 되었습니다.먼저 개발자 포털에 로그인하여 내 앱에 맞는 프로비저닝 프로필을 수동으로 생성했습니다.그런 다음 수동으로 생성된 새 프로비저닝 프로파일을 다운로드하여 설치합니다.

xcode 7에서는 다음을 통해 애드혹 프로비저닝을 선택할 수 없었습니다.

Organizer -> App Store & Organizer에 업로드 -> 검증

그러나 Organizer -> Export를 통해 선택할 수 있습니다.

편집:

testFlight용 앱 스토어에 임시로 내보내기 위해 앱을 내보낸 후 앱을 업로드하는 것은 여기서 논의되는 또 다른 문제를 야기했습니다.따라서 이 두 가지 문제에 대한 해결책은 하나입니다.주최자를 통해 선택할 수 있도록 AppStore 프로비저닝을 만들고 appstore에 업로드하여 testFlight를 활용합니다.

  1. Xcode 7 뒤에 -exportOptionsPlist 옵션을 지정하는 것이 올바른 방법이라고 생각합니다.프로젝트 설정에서 지정한 내용에 관계없이 GUI 내보내기와 같은 올바른 프로비저닝 파일을 선택합니다.

xcodebuild -exportArchive-archivePath $Archive_Path -exportPath $LOCAL_PACKage_DIR -exportOptionsPlist $Export_Plist_Path

옵션Plist 파일은 다음과 같습니다.

<dict>
  <key>teamID</key>
        <string>MYTEAMID123</string>
        <key> teamID </key>
        <string>app-store</string>
        <key>uploadSymbols</key>
        <true/>
</dict>


<plist>

애플리케이션 스토어, 엔터프라이즈, 애드혹, 개발이 대안임

  1. 그러나 위의 오류가 발생한 후에 다른 오류가 발생할 수 있습니다.

오류 도메인 =IDEdistributionErrorDomainCode=14 "해당 장치를 찾을 수 없습니다."UserInfo={NSLocalizedDescription=해당 디바이스를 찾을 수 없습니다.}

루비 문제입니다.이 셸 스크립트를 사용해 보십시오.

xcbuild-safe.sh xxxxNormalOptionsInXcodebuild bla...
  1. 잠시만요, 또 이상한 오류가 발생합니다.

xcbuild-safe.sh: line 62: shell_module_update: 명령을 찾을 수 없습니다.

이게 무슨 일입니까?shell_session_update우리가 그것을 해결해 봅시다.실제 xcodebuild cmd 앞, 즉 60 또는 61행에 함수를 정의하면 됩니다.

function shell_session_update() { :; }

사용할 프로비저닝 프로파일을 선택할 수 있는 방법이 없습니다.무엇을 하려고 합니까? (즉, 선택하려는 프로필에서 자동으로 생성되는 프로필이 허용하지 않는 프로필은 무엇입니까?)

언급URL : https://stackoverflow.com/questions/25056144/xcode-6-how-to-pick-signing-certificate-provisioning-profile-for-ad-hoc-distri

반응형