我有一个使用 CloudKit 的应用程序。升级到 iOS 9 后,它继续像以前一样工作,没有任何问题。然而,几天前,我从 Xcode 6 升级到了 7。Xcode 7 在视觉上破坏了一些东西......对齐,collectionview 单元格边缘插入改变了,等等......这确实很烦人,但这可能是我需要修复的一些自动布局问题反正。真正的问题超出了我以前见过的任何东西。突然之间,除非我连接到 wifi 和电源,否则我的 CK 数据将不会返回。起初我认为它必须连接到笔记本电脑并从 Xcode 运行到设备。我通过断开与笔记本电脑的连接并插入墙壁对其进行了测试,并返回了 CK 数据并渲染了 CV 单元。而且无论它是否连接到电源,如果我在蜂窝连接上,我只会得到微调器(数据加载),它就在那里。如果它是从 Xcode 运行的,我也看不到任何日志记录发生。但是,如果我在应用程序运行时切换到 wifi,那么我会看到返回的 CK 结果的日志记录,然后触发自定义单元格 View ,最后在设备上呈现单元格。
为了清楚起见,我没有对发生的这种情况进行任何编码更改...只是升级到 Xcode 7(不是 GM 版本)。在源代码管理中进行比较时,我确实注意到 info.plist 的以下差异。
xcode 7:
CFBundle标识符
$(PRODUCT_BUNDLE_IDENTIFIER)
xcode 6:
CFBundle标识符
com.drivethruu.${PRODUCT_NAME:xxxxxxxxx}
我将实际产品名称替换为“xxxx...”,以防我不应该公开展示此帖子。我确实使用了 xcode 6 值来查看这是否是问题并得到了完全相同的行为。没有让事情变得更糟,但也没有让事情变得更好。此外,我已将部署目标更改为 iOS 7.1 - 9.0 之间的所有内容,并且没有任何差异。
有人遇到过这种情况吗?关于如何解决这个问题的任何想法?
更新: 下载了 Xcode 6.4,丢弃了 Storyboard和 info.plist 文件中的更改并重新编译并解决了所有问题,所以这肯定是 Xcode 7 的一些问题。仍在运行 iOS 9...将需要找出 Xcode 7 出现问题的原因,因为我需要在提交之前对应用程序 iOS 9 进行认证。可能需要向 Apple 开票。
谢谢!
Best Answer-推荐答案 strong>
Apple 更改了 qualityOfService 设置的行为以及获取数据的方式。在我看来,这是一个 CloudKit 错误。有关更多信息,请参阅:
iOS 9 CloudKit: query does not return anything while connected to cellular network
也请在 http://bugreport.apple.com 上报告此错误。
关于ios - xcode 7 和 cloudkit 的非常奇怪的问题,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/32667996/
|