在tvOS上的iCloud同步

目前为止,有没有人设法让iCloud在tvOS上工作?

我正在使用键值存储,并成功将所有内容保存在iCloud中。 但是,它不会同步iOS-App和tvOS-App之间的数据。 我为这两个应用程序使用相同的捆绑标识符。

有没有人遇到同样的问题?

所以,看起来苹果在tvOS上可能有一个问题,因为如果我遵循苹果公司关于configuration多个应用程序的公用键值存储的说明, 我可以在iOS应用程序和macOS应用程序之间共享,而不是使用tvOS应用程序完全一样的设置。

以下是我的结果:

苹果公司的Instuctions,我使用第一: 苹果说明

因此,CloudKit全部是关于默认Container而不是直接应用程序包ID。 所以,我设置我的主iOS应用程序与默认容器,将成为键值共享容器。

共享容器

这是我的主要权利文件: 主要权利 然后,我将两个NSUbiquitousKeyValueStore对存储在默认存储中,并检索值:

NSUbiquitousKeyValueStore.defaultStore().dictionaryRepresentation 

在这里输入图像说明

因此,在我的macOS应用程序中,我还启用了CloudKit,并删除默认容器并将其设置为主iOS应用程序容器。 然后在Entitlements文件中手动设置com.apple.developer.ubiquity-kvstore-identifier以包含主应用程序的包ID:

取消选中默认容器并切换Primaries: 次要容器

这是我的次要macOS授权文件: 次要权利

然后我运行macOS应用程序,然后presto ,我有从初选默认键值存储的键值对,并检索值easy-peasy:

  NSUbiquitousKeyValueStore.defaultStore().dictionaryRepresentation 

次要权利 如果我然后做相同的修改到我的tvOS应用程序,defaultStore()显示为空,我不能让它与iOS和MacOS应用程序共享。

这是我的次要tsOS权利文件: tsos权利

没有价值没有价值tsOS没有份额