更改配置文件是否会影响iCloud?

问题描述:

我刚刚在我的开发环境中添加了Apple Watch,并且必须重新生成开发配置文件以包含此设备,因为XCode不会自动处理它。我重新在iPhone和iPad上运行应用程序,现在我的应用程序显示没有数据,即使我知道iCloud中有数据。如果我在其中一台设备上创建数据,则会在另一台设备上显示此新信息。因此,重新创建我的配置文件导致设备开始忽略iCloud上的旧数据,并且有什么方法可以找回那里?更改配置文件是否会影响iCloud?

事实证明,这与配置无关。我在旧版本的应用程序上创建了原始数据。然后,我添加了一个归因于核心数据模型并实现了自动迁移,似乎工作正常,但安装新版本的应用程序后,它似乎失去了访问旧数据的能力。我重新安装了1.0版本,数据全部回来了。这很麻烦,因为我担心如果用户在旧版本上创建数据时会在生产环境中发生什么情况,然后安装更新。他们的数据是否会在iCloud中丢失?

它应该迁移数据,如果它正在使用相同的捆绑ID替换类似签名的应用程序。如果1.0版本来自App Store,而您将其替换为开发版或临时版本,则不会进行迁移,因为App Store构建与非App Store构建的数据存储方式不同。有关更多信息,请参阅this

您能否确认1.0版本和新版本都是内部版本(即不是来自App Store)?

+0

是的,这些都是内部版本。该应用程序尚未在App Store上发布。我上面的答案也不完全准确。当我运行我的应用程序的Watch目标来测试Watch扩展时,现有数据从手机中消失,并被第一次消失时创建的数据替换。 Watch应用程序的套件ID是否有可能使手机使用不同的Core Data存储? – mashers

+0

这是可能的,但我觉得不寻常。你确定你没有无意中改变版本1和版本2之间的软件包ID。如果没有,这可能是一个iOS/Xcode构建错误。我从未使用Apple Watch扩展程序完成iCloud CoreData。你看过这个问题:http://*.com/questions/30240585/using-same-icloud-enabled-coredata-store-across-watch-extension-and-iphone – wottle