gpt4 book ai didi

ios - Xcode 8.0 自动管理签名行为

转载 作者:IT王子 更新时间:2023-10-29 08:07:48 27 4
gpt4 key购买 nike

我使用“自动管理签名”选项已有一段时间了。然而,当我在最近的 Xcode 8.0 版本中这样做时,它迫使我使用开发人员代码签名身份,即使是在build设置中发布和分发,这本身就很奇怪。当我提交相关二进制文件时,我收到了来自 Apple 的可怕的 Missing Push Notification Entitlement 电子邮件。为了弥补这一点,我禁用了自动选项并返回手动指定配置文件,这让我可以在分发build设置中保留分发配置文件并保存来自 Apple 的警告电子邮件。

为什么自动管理以这种方式工作以及如何调整其行为?

最佳答案

随着 Xcode 8 的发布,Apple 引入了一种管理签名配置的新方法。现在您有两个选项 ManualAutomatic

这个新的 Automatic Signing 的工作方式与之前的 Xcode 版本不同。之前,当您设置 Automatic 配置文件时,Xcode 会使用您计算机中与您尝试使用的权利和捆绑标识符相匹配的第一个配置文件和证书。

在 Xcode 8 中,Automatic Signing 将为您管理配置文件、权利和证书,但仅限于开发。如果您选择自动,您将被迫使用 Development signing 和 Xcode 创建的配置文件。

关于WWDC 2016 (Session 401 - What's new in Xcode app signing)他们解释了这种新的签名方法并描述了一些“最佳实践”。当您为分发构建并使用自动签名手动时,您应该为开发存档,然后导出(从管理器或命令行工具xcodebuild -exportArchive) 作为分发。组织者将重新签署您的应用以进行分发,即使它是为开发而存档的。

您描述的另一个问题“缺少推送通知权利”是因为 Xcode 8 改变了它应用权利的方式。使用以前版本的 Xcode,您不必显式添加 APS Environment 授权,如果您的配置文件具有该授权就足够了。确保在 Capabilities 选项卡中启用了 Push Notification 功能,并检查那里没有错误。

(编辑:此新行为是有意为之的,在 Xcode 8 发行说明中进行了描述:https://developer.apple.com/library/content/releasenotes/DeveloperTools/RN-Xcode/Introduction.html#//apple_ref/doc/uid/TP40001051-CH1-DontLinkElementID_44)

Xcode 8 does not automatically copy the aps-environment entitlement from provisioning profiles at build time. This behavior is intentional. To use this entitlement, either enable Push Notifications in the project editor’s Capabilities pane, or manually add the entitlement to your entitlements file. (28076333)

关于ios - Xcode 8.0 自动管理签名行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39440403/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com