在开发过程中使用生产CloudKit?

我的iOS和Mac应用程序已经启动到App Store,我的所有用户(包括我自己)都在使用CloudKit生产数据库。 我的问题是,有没有办法针对我的开发版本的生产环境? 似乎没有办法在Mac App Store之外定位生产环境,而对于iOS,只有Ad Hoc分发可以针对生产环境。

只需将以下条目添加到您的授权文件并执行一个干净的生成。 这使您可以在生产模式下使用cloudKit在Xcode中运行您的应用程序。 重要提示:请记得在提交您的应用程序进行AppStore审查之前删除此条目。
添加条目: com.apple.developer.icloud-container-environment

在这里输入图像说明

从iClouddevise指南https://developer.apple.com/library/mac/documentation/General/Conceptual/iCloudDesignGuide/DesigningforCloudKit/DesigningforCloudKit.html#//apple_ref/doc/uid/TP40012094-CH9-SW1

在开发过程中,Xcode会自动将您的应用程序指向开发环境。 在发布应用之前,请使用发布工作streamconfiguration您的应用。 在这个工作stream程中,Xcode允许您select是要定位开发环境还是生产环境,并将com.apple.developer.icloud-container-environment授权添加到您的应用程序中,并使用您select的值。 在发货之前,请务必为您的应用程序configuration生产环境。 面向开发环境的应用程序将被App Store拒绝。

您在这里发表的评论是一些额外的想法:根据Apple指南,只要您仍然在为您的应用程序开发最好的数据模式,并且允许更快的开发,就应该使用开发环境。 然后,苹果build议部署到生产和testing,在给客户之前。 所以我认为答案是取决于你在产品开发周期中的位置。 如果你在早期使用开发环境。 如果你有在这个领域的客户,那么我会使用生产环境生产,只要它满足我的需求。 如果我正在开发需要模式更改的新function,那么您应该只在开发环境中开发这些function,直到您确信将其部署到生产环境中后,不会为现有用户造成任何损失,并使其平滑过渡。 希望这个帮助。

我不确定是否将“com.apple.developer.icloud-container-environment权利”设置为“Production”将在从Xcode运行的设备上工作 – 它在模拟器上不适用于我。

但是你可以使自己成为一个“内部审查者”,并使用TestFlight运行一个新版本。 TestFlight使用生产环境。