我的iOS和Mac应用程序已经发布到App Store,我的所有用户(包括我自己)都在使用CloudKit生产数据库。我的问题是,有没有办法针对我的开发构建定位生产环境?似乎没有办法将生产环境定位到Mac App Store之外,而对于iOS,只有Ad Hoc分发可以定位到生产环境。
答案 0 :(得分:62)
将以下条目添加到权利文件并执行干净构建。
这允许您在生产模式下使用cloudKit在Xcode中运行您的应用程序。
要添加的条目:array([[ 1., 2., 3., 4., 5., 6., 7., 8., 9., 10.],
[ 11., 12., 13., 14., 15., 16., 17., 18., 19., 0.],
[ 20., 21., 22., 23., 24., 25., 26., 27., 0., 0.],
[ 28., 29., 30., 31., 32., 33., 34., 0., 0., 0.],
[ 35., 36., 37., 38., 39., 40., 0., 0., 0., 0.],
[ 41., 42., 43., 44., 45., 0., 0., 0., 0., 0.],
[ 46., 47., 48., 49., 0., 0., 0., 0., 0., 0.],
[ 50., 51., 52., 0., 0., 0., 0., 0., 0., 0.],
[ 53., 54., 0., 0., 0., 0., 0., 0., 0., 0.],
[ 55., 0., 0., 0., 0., 0., 0., 0., 0., 0.]])
答案 1 :(得分:2)
在开发过程中,Xcode会自动将您的应用指向开发环境。在发布应用程序之前,请使用分发工作流配置您的应用程序。在此工作流程中,Xcode允许您选择是否要定位开发或生产环境,并使用您选择的值将com.apple.developer.icloud-container-environment权利添加到您的应用程序。在发货之前,请务必为生产环境配置您的应用。 App Store会拒绝以开发环境为目标的应用程序。
你在这里评论是一些额外的想法: 根据Apple指南,您应该使用开发环境,只要您仍在为您的应用程序开发什么是最佳的数据模式,并允许更快的开发。然后Apple建议在向客户提供之前部署到生产并进行测试。所以我认为答案是,这取决于您在产品开发周期中的位置。如果您处于早期阶段,请使用dev env。如果您有现场客户,那么只要满足我的需求,我就会使用生产环境进行生产。如果我正在开发需要架构更改的新功能,那么您应该只在开发环境中开发这些功能,直到您确信将它们部署到生产中不会破坏现有用户的任何内容并允许它们平滑过渡。希望这有帮助。
答案 2 :(得分:2)
我不确定是否设置" com.apple.developer.icloud-container-environment权利"到"生产"将在从Xcode运行的设备上运行 - 它在模拟器上对我不起作用。
但是你可以让自己成为一名内部评论家'并使用TestFlight运行新版本。 TestFlight使用生产环境。
答案 3 :(得分:0)
除了com.apple.developer.icloud-container-environment。我发现生产云一开始没有用。我检查了仪表板中的日志,可能会看到错误。只有当我将开发设置部署到生产中时,它才起作用。开发人员似乎会自动创建新设置,而生产人员不会。也许我应该从应用程序中以更多的编程方式进行设置,但是我希望这些信息有所帮助。