iCloud 同步不会在应用程序的实时版本和应用程序的开发版本之间发生(通过 Diawi、Testflight 或 ipa 副本测试时)
Posted
技术标签:
【中文标题】iCloud 同步不会在应用程序的实时版本和应用程序的开发版本之间发生(通过 Diawi、Testflight 或 ipa 副本测试时)【英文标题】:iCloud Sync does not happen between Live Version of App And Development Version of App (When tested via Diawi, Testflight or ipa copy) 【发布时间】:2014-06-23 15:02:07 【问题描述】:背景
我一直在 Packing Planner 应用程序中使用 iCloud 和 Core Data。 App Store 中的当前版本是 2.0.2。它有 14000 多个用户。
根据业务需要,我不得不在即将发布的版本 (v2.1) 中向架构中添加 4 个新属性(字段)。
我的 XCode 版本是:5.1.1,ios 版本是:7.1.1 我已经使用自动映射实现了架构的轻量级迁移问题
-
最终用户正在使用从 App Store 下载的应用并启用了 iCloud。
最终用户通过 Diawi、TestFlight 或 ipa 复制/粘贴更新到应用程序的 2.1 版,iCloud 同步不会发生,并且用户无法在其设备中看到 iCloud 数据。
但是,如果用户通过 XCode 更新到应用程序的 2.1 版,则 iCloud 同步会按预期进行。
现实世界的用户将通过 App Store 更新应用程序,除了 Diawi、ipa 复制/粘贴和 Testflight 之外,无法测试此场景。
如何确保用户在 2.1 版本更新后能够正常使用 iCloud。
不同的场景测试
-
我尝试删除 4 个新属性(字段),然后执行“问题步骤 #2”。它运作良好。如果我再次添加 4 个新属性,它将停止运行。罪魁祸首肯定是添加了属性。
我尝试在 iOS 6 上执行“问题步骤 #2”。它按预期运行,没有任何问题。
【问题讨论】:
【参考方案1】:我知道当您尝试使用最新/相同版本安装开发版本而不是分发版本时,iCloud 同步将不起作用。要获得 iCloud 工作类型的构建必须相同。即 iCloud 同步仅在您安装新开发版本而不是旧开发版本/新发行版本而不是旧发行版本时才有效。
【讨论】:
以上是关于iCloud 同步不会在应用程序的实时版本和应用程序的开发版本之间发生(通过 Diawi、Testflight 或 ipa 副本测试时)的主要内容,如果未能解决你的问题,请参考以下文章
iCloud 同步后 UITableView 不会重新加载(Swift 2)
iOS7 / Mavericks 应用程序 icloud coredata 首次同步慢
Core Data 应用程序中的 UITableView 不会更新第二个设备的主视图,除非重新启动应用程序,并使用 iCloud 同步