使用“自动管理签名” / allowProvisioningUpdates时,何时更新配置文件?

时间:2018-08-21 14:05:42

标签: ios xcode provisioning-profile xcodebuild ios-provisioning

我有一个企业分布式应用程序,它是使用xcodebuild在构建服务器上构建的。去年,我们进行了更改,以使用带有“ -allowProvisioningUpdates”标志的“自动管理签名”功能。使用此技术可以很好地生成供应配置文件,但使用此配置文件将需要长达一年的时间,并且有效期为31天。

最初,我给人的印象是,使用“ allowProvisioningUpdates”会导致在每个新构建中重新生成配置文件,但是如果是这样的话,它就不会过期。我们需要使用更新的配置文件来进行新的构建,以使我们的用户在几个月内不会出现损坏的应用程序。但是,生成的配置文件未显示在Apple Developer Center的“证书,标识符和配置文件”部分中,并且我找不到任何方法来强制Xcode或xcodebuild生成新的配置文件。我该如何强迫这种情况发生,以确保我们的用户没有停机时间?个人资料最终过期后会发生什么?

4 个答案:

答案 0 :(得分:7)

我联系了Apple,这是他们必须说的:

  

仅在Xcode上自动管理签名   在有效期结束后创建一个新的配置文件   以前。

     

对于需要提交到的新版本,这是最佳选择   App Store,因为当   供应配置文件。

     

在开发内部应用程序时,如果您允许配置   配置文件过期以自动注册您的新版本(包括新版本)   自动创建的配置文件),您的用户将无法   访问您的应用。

因此,答案似乎是我们不应该将自动签名用于内部/企业分发,而应该仅用于App Store部署。

答案 1 :(得分:1)

我在内部分发的一些应用程序也遇到了同样的问题...最终对我有用的解决方案是,从开发人员中心删除应用程序ID,然后让Xcode重新创建它以及任何附带的内容供应配置文件。但是要记住的一件事是,如果您在开发人员中心中只有1个应用程序ID,那么删除它也会同时删除您的签名证书和配置文件。我们有几个依赖于我们证书的应用程序,因此没有被删除。但是,有关即将到期的配置文件的主要问题已解决。

答案 2 :(得分:0)

尝试在开发人员门户网站上手动创建第二个配置文件,从构建服务器的~/Library/MobileDevice/Provisioning Profiles中删除旧的文件,下载并安装新的文件。

答案 3 :(得分:0)

尽管让我们这些更喜欢使用脚本的所有项目的人感到恼火,但事实证明,在“设备”不在自动配置配置文件中的机器上手动运行构建会更新配置文件。

无论是从命令行使用脚本还是从xcode GUI运行存档/导出,这对我现在都有效。

没有给出提示,它只是默默地更新和运行。

由于Apple在上面回答了我们,所以这可能是Xcode 10.1的一项新功能/修复程序,这就是我今天要讲的内容。