在构建设置(Xcode 4.2.1)中指定权利和代码签名标识时,从Xcode构建时有以下输出:
ProcessProductPackaging "myAppName.entitlements" "/path/to/myAppName.xcent"
cd /path/to/myAppName/SourceCode
builtin-productPackagingUtility "/path/to/myAppName/SourceCode/myAppName.entitlements" -entitlements -format xml -o "/path/to/myAppName.xcent"
CodeSign "/path/to/Garfields Comic Boom 1.0.app"
cd /path/to/myAppName/SourceCode
setenv CODESIGN_ALLOCATE /Developer/usr/bin/codesign_allocate
/usr/bin/codesign --force --sign "myCertificate" --entitlements "/path/to/myAppName.xcent" "/path/to/myAppName.app"
我想在构建结束时签署我的app文件夹,而不是在Xcode构建期间。
我的问题是我不知道如何在命令行中生成xcent文件。
问题:如何在命令行中生成xcent文件?我从根发现了一个名为productPackagingUtility的内容......
答案 0 :(得分:2)
我想在构建结束时签署我的app文件夹,而不是在Xcode构建期间。
如果您禁用设备构建的代码签名,则IIRC最新版本的Xcode会抱怨。
最简单的方法是让Xcode对其进行签名,然后再重新签名。步骤大约是
codesign -d --entitlements=MyApp.xcent MyApp.app
MyApp.app/embedded.mobileprovision
并相应地修改权利(IIRC文件格式具有4字节魔术和4字节长度;请记住更新长度! )。答案 1 :(得分:0)
使用codesign实用程序不需要xcent文件。您只需创建一个plist文件并将其用于权利。确保它是XML plist,而不是二进制文件。
答案 2 :(得分:0)
.entitlements和$ {APPNAME} .xcent的格式相同,因此可以直接复制。