我们正在使用fastlane将我们的iOS App部署到Fabric。此应用为不同的环境提供了两种不同的应用标识符。
update_app_identifier(
xcodeproj: 'app.xcodeproj',
plist_path: './app/Info.plist',
app_identifier: bundleIdentifier
)
ipa = gym(
scheme: 'app',
export_method: 'enterprise',
project: 'app.xcodeproj',
output_name: "app.ipa"
)
bundleIdentifier
变量通过方法arg传递。
使用第一个应用程序标识符project.pbxproj
将{i}项目上传到包含com.test.example1
的repo,我们尝试部署到结构,这一切都很顺利。 fastlane beta
用该标识符填充标识符。
如果我们尝试使用fastlane live
进行部署,则会尝试生成com.test.example2
的版本。完成构建阶段并尝试签名后,它会抛出:
error: exportArchive: Provisioning profile "match InHouse com.test.example2" doesn't match the entitlements file's value for the application-identifier entitlement.
Error Domain=IDEProfileQualificationErrorDomain Code=8 "Provisioning profile "match InHouse com.test.example2" doesn't match the entitlements file's value for the application-identifier entitlement." UserInfo={IDEProfileQualificationError_Profile=<DTDKProvisioningProfile www: UUID: wwwwww, name: match InHouse com.test.example2, team: w12w12, platform: iOS>, NSLocalizedDescription=Provisioning profile "match InHouse com.test.example2" doesn't match the entitlements file's value for the application-identifier entitlement.}
查看pbxproj
文件,我发现com.test.example1
的应用标识符仍然存在。它似乎没有改变,我认为这是关于权利的问题。
有同样问题的人吗?
谢谢!