我们使用 Fusetools构建一个应用程序。使用命令 uno build --target=ios --configuration=Release
我们为应用程序生成一个新的 myapp.xcodeproj
文件。
当我在 Xcode IDE 中手动打开 .xcodeproj
时,我看到选中了 Automatically manage signing
复选框。然后我们使用 FaSTLane match 获取证书并在 Xcode 中手动选择应用商店证书。这一切都很好。
现在 - 我们尝试使用像 Bitrise 这样的 CI 提供程序来构建它使用 headless 构建过程。然后一切都停在同一点。我们的 .xcodeproj
选中了 Automatically manage signing
复选框。
我们的 Fastfile 看起来像这样:
disable_automatic_code_signing(path: "../myapp.xcodeproj")
match(git_url: "git@github.com:MyRepo/match.git",
app_identifier: "com.myapp.myapp",
type: "appstore",
readonly: true)
gym(
workspace: "myapp.xcworkspace",
scheme: "MyApp",
export_method: "app-store",
xcargs: "PROVISIONING_PROFILE_SPECIFIER='match AppStore
com.myapp.myapp'"
)
在我们的 Fastfile
中,我们首先尝试禁用自动签名,在 gym 中 - 传入参数 xcargs: "PROVISIONING_PROFILE_SPECIFIER='match AppStore com.myapp.myapp'"
在构建之前设置配置文件。
然后我从 Bitrise CI 监控器得到这个:
SDK“iOS 10.3”中的产品类型“Application”需要代码签名
如果在本地运行尝试将自动签名设置为 false 并执行相同的操作,我可以重现此问题。
有什么想法吗?
最佳答案
xcargs: "PROVISIONING_PROFILE_SPECIFIER='匹配 AppStore com.myapp.myapp'"
这种方法不再适用,因为应用可能有多个目标。相反,请查看 Xcode setup guide这描述了您可以为每个目标的配置文件名称选项使用由 match 填充的环境变量 👍
关于ios - 将 Xcode 自动签名设置为 false,并使用 faSTLane match 和 gym 设置配置文件和证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44946103/