用于签署iPhone应用程序的供应配置文件的名称?

Gui*_*ume 4 iphone build-automation xcode provisioning codesign

我编写了一个脚本,用于xcodebuild生成iPhone应用程序的AdHoc版本.

我想编辑此脚本以输出用于签署构建的Provisioning Profile的名称.
这将允许我在自动生成的zip中包含Provisioning Profile.这样,我就可以自动将存档发送给AdHoc测试人员,并确保他们拥有正确的配置文件来安装应用程序.

有没有办法提取用于签署应用程序的供应配置文件名称或文件:

  • 来自建立和签署的应用程序
  • 来自Xcode项目(我不想手动解析project.pbxproj文件,因为此解决方案可能在下一个Xcode更新中中断)
  • 任何其他可编写脚本的方式

Unforgiven 建议使用该命令security获取用于签署应用程序的证书的名称.获得此信息后,有没有办法找到供应配置文件的名称?


这是我尝试过的:

遗憾的是,构建期间xcodebuild的输出不包含此信息.在CodeSign步骤中,有一行:

/usr/bin/codesign -f -s "iPhone Distribution: My name" ...

但我无法将其与证书相匹配.

我研究了使用codesign和命令

/usr/bin/codesign -d -vvv --entitlements - -r - /Users/lv/Desktop/TicTacBoo.app/TicTacBoo
看起来很有希望,但它没有给我我需要的信息.
我还没有在xcodebuild中找到任何有用的选项.

Jon*_*ric 6

供应配置文件已应用程序中.您的zip文件中不需要另一个副本(除非您的测试人员不了解如何在应用程序内部使用该副本.)

它被命名了 YourApplication.app/embedded.mobileprovision

这不能回答你的问题,因为原始文件名丢失了,但它似乎解决了你更大的问题.

  • 以下是获取文件名的快速而繁琐的方法:strings path_to_embedded_file.mobileprovision | grep -A1'<key>名称</ key>'| 尾巴-n1 | awk -F'<string>''{print $ 2}'| awk -F'</ string>''{print $ 1}' (5认同)
  • 辉煌!文件名保存在文件中的"名称"键下 (2认同)