在Xcode 5中查找configuration文件
在Xcode 5中,我可以在Xcode >> preferences >> accounts >> view details
下获得configurationconfiguration文件的列表。 我想复制configuration文件,并将其发送给我的客户之一,但我不能右击它find它使用“ 查找configuration文件 ”选项。
如何在XCode 5中获得特定的configuration文件,或者每次都必须从developer.apple下载它?
我find了一种方法来了解您的configuration文件如何命名。 在构build设置的代码签名部分中select所需的configuration文件,然后再次打开select视图,然后单击底部的“其他”。 然后出现一个视图,命名当前select的configuration文件。
您现在可以在path中findconfiguration文件:
~/Library/MobileDevice/Provisioning Profiles
更新:
对于docker:
cd ~/Library/MobileDevice/Provisioning\ Profiles
在这里检查:
~/Library/MobileDevice/Provisioning Profiles
以下在我的命令提示符下工作
cd ~/Library/MobileDevice/Provisioning\ Profiles/ for f in *.mobileprovision; do echo $f; openssl asn1parse -inform DER -in $f | grep -A1 application-identifier; done
找出一个特定的configuration文件使用哪个签名密钥对于一个shell是很难做到的。 基本上你需要做的是:
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,您可以右键单击帐户下的configuration文件 – >详细信息(您在那里获得的屏幕截图),并显示一个popup窗口“show in finder”。
如果足够使用以下标准来查找configuration文件:
<key>Name</key> <string>iOS Team Provisioning Profile: *</string>
你可以使用awk扫描目录。 这一行将find第一个文件,其中包含以“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" *
它可以从configuration文件目录$ HOME / Library / MobileDevice / Provisioning Profiles中调用:
~/findprov "iOS Team"
要使用该脚本,请将其保存到合适的位置,并记住设置可执行模式; 例如, chmod ugo + x
您可以使用“iPhoneconfiguration实用程序”来pipe理configuration文件。
我写了一个简单的bash脚本来解决这个愚蠢的问题。 将path传递给您的规定的指定副本(从developer.apple.com下载),它将在您的configuration库中标识匹配的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,但这个问题链接的人谁想要检查供应configuration文件的位置:
以下文档https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainingCertificates/MaintainingCertificates.html
- selectXcode>首选项。
- 点击窗口顶部的帐户。
- select要查看的团队,然后单击查看详细信息。 在出现的对话框中,查看您的签名身份和configuration文件。 如果创buildbutton出现在证书的旁边,它还没有被创build。 如果下载button出现在configuration文件旁边,则不在您的Mac上。
您可以在每个configuration文件上启动上下文菜单,然后单击“在Finder中显示”或“移至垃圾箱”。