使用多个方案配置配置文件&推送通知

时间:2017-10-17 17:31:14

标签: ios xcode provisioning-profile ios-provisioning

我按照以下文章启用相同的应用程序,在每个环境(dev,uat,release)上多次安装在同一设备上:

https://medium.com/@danielgalasko/run-multiple-versions-of-your-app-on-the-same-device-using-xcode-configurations-1fd3a220c608

我遇到了一个我不确定如何修复的问题。我们现在为每个环境都有一个唯一的捆绑ID。我们需要将应用程序的每种风格分发给用户,因此我们需要分发和开发提供配置文件。因为我们有多个方案,每个方案都有自己的捆绑ID,所以我们需要为每个方案配置配置文件(由于推送通知权限,不能使用通配符)。我需要检查分发配置文件到我们的仓库,因为我们使用bitrise for CI,它需要一个分发代理配置文件来存档应用程序,所以每次我们想要剪切本地构建并在设备上运行它们我需要将配置文件更改为dev变体,并记住不要检查这些更改到repo。

这似乎有些倒退,是否有更有效的方法来处理这种情况?

2 个答案:

答案 0 :(得分:1)

处理此问题的一种方法是将构建应用程序的每个“版本”所需的设置编码为用于构建的命令行工具。 fastlane几乎就是这个规范的工具。您可以设置多个“通道”,这将使用不同的方案和/或配置文件构建您的应用程序。它还有一种机制,允许您将配置文件存储在单独的加密git仓库中。

我的经验是,为了做到这一点可能有点繁琐,特别是如果你正在使用CI服务进行构建,但是一旦你有了它的工作,就更容易确保你正在构建正确的二进制文件正确的选择。

答案 1 :(得分:0)

  1. 我建议您只为Apple Enterprise /开发人员帐户中所需的所有方案单独创建APP ID。

  2. 然后,只需确保所有APP ID都启用了“开发和分发”的推送通知。我认为分配就足够了。

  3. 现在,在您的Xcode中,让所有方案中的Option都设置为自动配置,这样您就可以轻松地在Account中创建配置文件,Xcode将处理此问题。

  4. 现在告诉你的服务器人员为APNS Distribution证书处理.p12聪明地为每个设置密码并触发推送每个应用程序它应该没问题。如果给出了开发APNS证书,请确保他选择了SANDBOX,如果给出了分发证书,则选择LIVE模式。