tvOS上的iCloud同步

时间:2016-04-19 11:13:58

标签: ios icloud tvos

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

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

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

1 个答案:

答案 0 :(得分:2)

所以,似乎苹果可能在tvOS方面存在问题,因为如果我按照Apple的说明为多个应用配置通用键值存储 我可以使用完全相同的设置在iOS App和macOS App之间共享,但不能与tvOS应用共享。

以下是我的结果:

我用过的Apple的第一部分: Apple Instructions

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

Shared Container

以下是我的主要权利文件: Primary Entitlements 然后我在默认存储中存储了两个NSUbiquitousKeyValueStore对并检索了值:

    NSUbiquitousKeyValueStore.defaultStore().dictionaryRepresentation

enter image description here

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

取消选中默认容器并切换Primaries: Secondary Container

以下是我的辅助macOS Entitlements文件: Secondary Entitlements

然后我运行macOS app并presto ,我有来自primaries默认键值存储的键值对,并检索了easy-peasy的值:

    NSUbiquitousKeyValueStore.defaultStore().dictionaryRepresentation

Secondary Entitle 如果我然后对我的tvOS应用程序进行相同的修改,则defaultStore()显示为空,我无法与iOS和macOS应用程序共享。

以下是我的辅助tsOS权利文件: tsOS Entitlements

没有presto,没有价值tsOS no share