苹果iOS开发 解析描述文件 读取mobileprovisioning profile

如果想使用命令行自动打包ios,就需要从描述文件中获取到相关信息,本文介绍如何解析描述文件。

工具使用Mac OS自带的命令:

plistBuddy="/usr/libexec/PlistBuddy"
 

下面举例说明如何读取描述文件的uuid,名称,bundleid等信息:

    #根据mobileprovision文件获取CODE_SIGN_IDENTITY,UUID...${PROVISIONING_FILE}即描述文件
    identity_str=`PlistBuddy -c 'Print DeveloperCertificates:0' /dev/stdin <<< $(security cms -D -u 11 -i "${PROVISIONING_FILE}") | openssl x509 -subject -inform der | head -n 1`
    codeSignIdentity=`echo "${identity_str}" | cut -d "/" -f3 | cut -d "=" -f2`

    profileUuid=`PlistBuddy -c 'Print :UUID' /dev/stdin <<< $(security cms -D -u 11 -i "${PROVISIONING_FILE}")`

    profileName=`PlistBuddy -c 'Print :Name' /dev/stdin <<< $(security cms -D -u 11 -i "${PROVISIONING_FILE}")`

    bundleLongId=`PlistBuddy -c 'Print :Entitlements:application-identifier' /dev/stdin <<< $(security cms -D -u 11 -i "${PROVISIONING_FILE}")`
    profileBundleId=${bundleLongId#*.}

 

你可能感兴趣的:(iOS)