如下所示:https://github.com/KrauseFx/fastlane/blob/master/docs/CodeSigning.md
我打开了我项目的project.pbxproj
并搜索了这样的声明 -
PROVISIONING_PROFILE = "";
奇怪的是,没有为配置文件定义变量。我确保xCode中的构建设置下的设置为automatic
。我也检查了一些其他项目,这样的声明丢失了。是什么造成的?另外,如果我手动想要将语句PROVISIONING_PROFILE = "";
添加到project.pbxproj
文件中的哪个位置。
答案 0 :(得分:0)
查找以XCBuildConfiguration
开头的部分。您需要为项目中的每个构建配置添加它:
/* Begin XCBuildConfiguration section */
8C822CD8279123D91163DD34 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_ENTITLEMENTS = "";
CODE_SIGN_IDENTITY = "iPhone Distribution: Company Name, Inc";
"CODE_SIGN_IDENTITY[sdk=iphoneos4.2]" = "iPhone Distribution: Company Name, Inc";
...
PROVISIONING_PROFILE = "";
"PROVISIONING_PROFILE[sdk=iphoneos4.2]" = "";
SDKROOT = iphoneos;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = "Release";
};
答案 1 :(得分:0)
PROVISIONING_PROFILE
的缺席等同于自动 - 将此值设置为空(值为UUID)表示您打算使用UUID与{的值匹配的特定配置文件。 {1}}。
在大多数情况下,您希望使用自动设置,该设置将显示为空PROVISIONING_PROFILE
行或不存在该行。 Automatic允许您更新,下载和安装较新版本的配置文件,而无需在每次添加新测试设备时更新构建配置,启用新的基于授权的服务,或者只是重新发布现有配置文件。
供应配置文件作为.mobileprovision存储在磁盘上,默认排序顺序为字母。使用自动时,以下规则用于选择要签名的配置文件 - 匹配胜利的第一个配置文件:
如果您必须使用特定的配置文件,请记住,每次在“证书,身份和配置文件”工具上编辑配置文件时,您都将下载新版本的配置文件 - 此配置文件的UUID将不同因此,每次进行更改时,您都需要更新构建设置。如果您与开发团队合作,只需将新开发人员的证书添加到配置文件中,就会导致生成新的UUID,并可能导致团队中一个或多个成员的代码签名错误。