游戏嵌入SDK,用Adhoc配置文件打出母包.ipa,其中渠道id存储在SDK的.bundle的plist文件里。开发人员拿到母包.ipa进行修改,批量打渠道包。在进行解压缩.ipa会破坏之前的签名,所以需要重新企业签名。打开.app会发现有这两个文件。其中_CodeSignature:ipa包签名文件,embedded.mobileprovision:证书配置文件,只要替换了这两个文件就可以解决ipa重签名的主要问题。如下图。
其中还需要用到Entitlements.plist,需要cd到Payload文件下,才可以生成。利用如下shell:
/usr/libexec/PlistBuddy -x -c "print :Entitlements " /dev/stdin <<< $(security cms -D -i production.app/embedded.mobileprovision) > Entitlements.plist
其中Can be debugged(Boolean)为NO。如下图所示:
对于Can be degugged等同于get-task-allow。
其中关于这个属性简介是:get-task-allow, when signed into an application, allows other processes (like the debugger) to attach to your app. Distribution profiles require that this value be turned off, while development profiles require this value to be turned on (otherwise Xcode would nev