Xcode 5에서는 .NET에서 프로비저닝 프로파일 목록을 가져올 수 있습니다 Xcode >> preferences >> accounts >> view details
. 프로필을 복사하여 내 고객 중 한 명에게 보내야하는데 " Finder에서 프로필 표시 "옵션을 사용하여 찾을 수 없습니다 .
XCode 5에서 특정 프로비저닝 프로파일을 얻으려면 어떻게해야합니까? 아니면 매번 developer.apple에서 다운로드해야합니까?
Xcode 5에서는 .NET에서 프로비저닝 프로파일 목록을 가져올 수 있습니다 Xcode >> preferences >> accounts >> view details
. 프로필을 복사하여 내 고객 중 한 명에게 보내야하는데 " Finder에서 프로필 표시 "옵션을 사용하여 찾을 수 없습니다 .
XCode 5에서 특정 프로비저닝 프로파일을 얻으려면 어떻게해야합니까? 아니면 매번 developer.apple에서 다운로드해야합니까?
답변:
프로비저닝 프로필의 이름을 찾는 방법을 찾았습니다. 빌드 설정의 코드 서명 섹션에서 원하는 프로필을 선택한 다음 선택보기를 다시 열고 하단의 "기타"를 클릭합니다. 그런 다음 현재 선택한 프로비저닝 프로파일의 이름이있는보기가 발생합니다.
이제 다음 경로에서 프로필 파일을 찾을 수 있습니다.
~/Library/MobileDevice/Provisioning Profiles
최신 정보:
터미널의 경우 :
cd ~/Library/MobileDevice/Provisioning\ Profiles
cd ~/Library/MobileDevice/Provisioning\ Profiles
grep -l "iOSTeam Provisioning Profile: com.your.bundle.id." *
For terminal: cd ~/Library/MobileDevice/Provisioning\ Profiles
@tsafrir
여기에서 확인하십시오 :
~/Library/MobileDevice/Provisioning Profiles
open -a TextEdit /Users/$(whoami)/Library/MobileDevice/Provisioning\ Profiles/4A733DA3-07E3-43A3-9AB2-2D25070153EB.mobileprovision
및 seach " <키> 이름 </ 키> "프로필의 이름을 찾기 위해 애플 회원 센터에 표시되는 또는 Xcode 계정 환경 설정에서.
다음은 명령 프롬프트에서 나를 위해 작동합니다.
cd ~/Library/MobileDevice/Provisioning\ Profiles/
for f in *.mobileprovision; do echo $f; openssl asn1parse -inform DER -in $f | grep -A1 application-identifier; done
특정 프로필에서 사용하는 서명 키를 찾는 것은 쉘 한 줄로하기가 더 어렵습니다. 기본적으로 다음을 수행해야합니다.
openssl asn1parse -inform DER -in your-mobileprovision-filename
그런 다음 DeveloperCertificates 항목을 자체 파일에 입력 한 후 base64 데이터의 각 블록을 잘라내어 붙여 넣습니다 . 그런 다음 다음을 사용할 수 있습니다.
openssl asn1parse -inform PEM -in file-with-base64
각 인증서를 덤프합니다. 출력에서 두 번째 commonName 뒤의 줄 은 "iPhone Developer : Joe Bloggs (ABCD1234X)"와 같은 키 이름이됩니다.
xCode 6을 사용하면 계정-> 세부 정보 (여기에있는 스크린 샷)에서 프로비저닝 프로파일을 마우스 오른쪽 버튼으로 클릭하고 "Show in Finder"팝업을 표시합니다.
다음 기준을 사용하여 프로필을 찾는 것으로 충분하다면 :
<key>Name</key>
<string>iOS Team Provisioning Profile: *</string>
awk를 사용하여 디렉토리를 스캔 할 수 있습니다. 이 한 줄짜리 파일은 "iOS Team"으로 시작하는 이름을 포함하는 첫 번째 파일을 찾습니다.
awk 'BEGIN{e=1;pat="<string>"tolower("iOS Team")}{cur=tolower($0);if(cur~pat &&prev~/<key>name<\/key>/){print FILENAME;e=0;exit};if($0!~/^\s*$/)prev=cur}END{exit e}' *
다음은 첫 번째 일치 항목도 반환하지만 작업하기 더 쉬운 스크립트입니다.
#!/bin/bash
if [ $# != 1 ] ; then
echo Usage: $0 \<start of provisioning profile name\>
exit 1
fi
read -d '' script << 'EOF'
BEGIN {
e = 1
pat = "<string>"tolower(prov)
}
{
cur = tolower($0)
if (cur ~ pat && prev ~ /<key>name<\\/key>/) {
print FILENAME
e = 0
exit
}
if ($0 !~ /^\s*$/) {
prev = cur
}
}
END {
exit e
}
EOF
awk -v "prov=$1" "$script" *
프로필 디렉터리 $ HOME / Library / MobileDevice / Provisioning Profiles 내에서 호출 할 수 있습니다 .
~/findprov "iOS Team"
스크립트를 사용하려면 적절한 위치에 저장하고 실행 모드를 설정해야합니다. 예 : chmod ugo + x
cd "${HOME}/Library/MobileDevice/Provisioning Profiles/"
awk 명령 앞에 추가 하기 만하면 원하는 곳에서 호출 할 수 있습니다.
이 어리석은 문제를 해결하기 위해 간단한 bash 스크립트를 작성했습니다. 프로 비전의 이름이 지정된 사본 (developer.apple.com에서 다운로드)에 대한 경로를 전달하면 프로 비전 라이브러리에서 일치하는 GUID 이름이 변경된 파일을 식별합니다.
#!/bin/bash
if [ -z "$1" ] ; then
echo -e "\nUsage: $0 <myprovision>\n"
exit
fi
if [ ! -f "$1" ] ; then
echo -e "\nFile not found: $1\n"
exit
fi
provisionpath="$HOME/Library/MobileDevice/Provisioning Profiles"
provisions=$( ls "$provisionpath" )
for i in $provisions ; do
match=$( diff "$1" "$provisionpath/$i" )
if [ "$match" = "" ] ; then
echo -e "\nmatch: $provisionpath/$i\n"
fi
done
Xcode5에 대한 것은 아니지만이 질문은 프로파일을 프로비저닝하는 위치를 확인하려는 사람들을 연결합니다.
문서 https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainingCertificates/MaintainingCertificates.html
10 개는 각 프로필에서 컨텍스트 메뉴를 시작하고 "Finder에서보기"또는 "휴지통으로 이동"을 클릭 할 수 있습니다.