仅使用 shell 我如何知道配置文件是应用商店还是临时的?
How can I know if a provisioning profile is app-store or ad-hoc using only the shell?
给定配置文件。什么命令会告诉我它是应用商店还是临时配置文件(或者这两种类型都不是)?
临时配置文件将包含一个列出设备的 XML 部分。 App Store 或企业版不存在。
所以...
pmills$ strings /Users/pmills/X_Ad_Hoc.mobileprovision | grep ProvisionedDevices
...显示:
<key>ProvisionedDevices</key>
...而...
pmills$ strings /Users/pmills/X_App_Store.mobileprovision | grep ProvisionedDevices
...什么都不显示。
另一种方法是使用 plistbudy 解析 mobileprovision 文件并查找 ProvisionsAllDevices
值:
/usr/libexec/PlistBuddy -c 'Print :ProvisionsAllDevices' /dev/stdin <<< $(security cms -D -i <path_to_profile.mobileprovision> )
如果命令 return 为真(return 代码为 0),它要么是应用商店配置文件,要么是内部分发配置文件。如果命令找不到 plist 条目(命令将 return a 1),则它是一个开发者配置文件。
给定配置文件。什么命令会告诉我它是应用商店还是临时配置文件(或者这两种类型都不是)?
临时配置文件将包含一个列出设备的 XML 部分。 App Store 或企业版不存在。
所以...
pmills$ strings /Users/pmills/X_Ad_Hoc.mobileprovision | grep ProvisionedDevices
...显示:
<key>ProvisionedDevices</key>
...而...
pmills$ strings /Users/pmills/X_App_Store.mobileprovision | grep ProvisionedDevices
...什么都不显示。
另一种方法是使用 plistbudy 解析 mobileprovision 文件并查找 ProvisionsAllDevices
值:
/usr/libexec/PlistBuddy -c 'Print :ProvisionsAllDevices' /dev/stdin <<< $(security cms -D -i <path_to_profile.mobileprovision> )
如果命令 return 为真(return 代码为 0),它要么是应用商店配置文件,要么是内部分发配置文件。如果命令找不到 plist 条目(命令将 return a 1),则它是一个开发者配置文件。