问题标签 [cloudkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1665 浏览

swift - 如何授予 discoverUserInfoWithUserRecordID 权限?

要通过 CloudKit 检索实际登录的 iCloud 用户信息,我需要调用该discoverUserInfoWithUserRecordID方法。

它的 API 说:

用户必须已授予此容器的 CKApplicationPermissionUserDiscoverability 权限。

它是如何工作的?

0 投票
3 回答
12309 浏览

ios - Swift CloudKit SaveRecord“错误保存记录”

我正在尝试将记录保存到 CloudKit,但出现错误。我在其他地方看到这是一个需要知道如何保存的问题,但我无法让它发挥作用。

这给了我错误:

不确定,因为我添加了 CKModifyRecordsOperation。遗憾的是,Apple 的文档中没有示例。我想念那个(你在 MSDN 上得到的)。

谢谢窥视!

0 投票
2 回答
3642 浏览

swift - 如何在没有谓词的情况下进行 CKQuery?

我需要查询所有的记录类型,没有任何过滤。我尝试了两种方法:

我收到错误:

'NSInvalidArgumentException',原因:'无法解析格式字符串“”'

怎么做?

0 投票
2 回答
816 浏览

ios - 任何适用于 IOS8 beta CloudKit 的 CKDiscoverAllContactsOperation 示例代码?

我一直在 ios 8 beta 中使用 icloud,CloudKitAtlasAnIntroductiontoCloudKit示例项目非常有帮助。 https://developer.apple.com/library/prerelease/ios/samplecode/CloudAtlas/Introduction/Intro.html

但是我想使用这个CKDiscoverAllContactsOperation类,但我在任何地方都找不到任何示例代码,而且在线文档也不是很有帮助。 https://developer.apple.com/library/prerelease/ios/documentation/CloudKit/Reference/CKDiscoverAllContactsOperation_class/index.html

如果有人成功使用CKDiscoverAllContactsOperation,您能否帮我指出正确的方向或展示一个应该如何调用它的工作示例?

我试过这个,看看我是否能得到 iCloud 的回复,但什么也没有:

并用这个打电话......

我知道代码不应该真正做任何事情。再次,我只是在寻找来自 iCloud 的回应。

0 投票
2 回答
1905 浏览

swift - iOS 8:通过订阅通知 CKRecord 更改

我正在运行 aCKFetchNotificationChangesOperation以删除自上次运行我的应用程序以来应该发送的所有更新通知。

CKNotification正如我所料,我得到了一堆对象,但是recordFields这些 CKNotification 中的每一个的对象都是零。我希望它填充我的对象的所有更改的属性。但也许事实并非如此。

我没有指定对象的desiredKeys属性CKSubscription,这显然会强制CKNotification recordFields保存该数据。但是文档说desiredKeys只能有 3 个值,而我的对象有很多超过 3 个可以更新的值。

所以现在我在想,我只需要获取CKNotification对象,看看它是否是更新,然后重新获取它指向的对象以检索其数据。然后我可以对CKRecord新旧版本进行比较,看看有什么变化。

我是否正确理解这一点?

0 投票
1 回答
529 浏览

cloudkit - 为什么在 CloudKit 中请求许可返回可能未完成?

我尝试从云套件容器中获取用户记录。我请求它的许可,但是现在,此时我得到了一个CouldNotComplete返回值。为什么,问题在我这边?

这是确切的错误消息:

[NSErrorFailingURLStringKey: https ://configuration.apple.com/configurations/internetservices/cloudkit/cloudkit-1.0.plist,_kCFStreamErrorCodeKey:57,NSErrorFailingURLKey:https ://configuration.apple.com/configurations/internetservices/cloudkit/cloudkit-1.0 .plist , _kCFStreamErrorDomainKey: 1, NSDebugDescription: NSURLErrorDomain: -1005, NSUnderlyingError: Error Domain=NSURLErrorDomain Code=-1005 "操作无法完成。(NSURLErrorDomain error -1005.)" UserInfo=0x7b96fb30 {NSErrorFailingURLStringKey= https:// /configuration.apple.com/configurations/internetservices/cloudkit/cloudkit-1.0.plist,_kCFStreamErrorCodeKey=57,NSErrorFailingURLKey= _https://configuration.apple.com/configurations/internetservices/cloudkit/cloudkit-1.0.plist,_kCFStreamErrorDomainKey=1 }]

0 投票
1 回答
2924 浏览

ios - CloudKit - 如果不存在,如何保存记录

我正在尝试创建一个包含唯一值的记录类型,并将充当另一个记录类型的目标引用对象。例如,记录类型 - 电影将包含用户提交的唯一电影列表。并且 FavoriteMovies 将包含一个用户参考和一个电影参考。用户可以从现有电影列表中进行选择,或向其中添加新电影。

如果我创建一个新的电影记录,而另一个用户创建一个具有相同名称的新记录(在我检索到电影列表之后,但在我尝试添加新记录之前),就会出现问题。这两条新记录被视为具有不同记录 ID 的不同记录。这意味着一旦我保存了新的,将有两个具有保存名称的电影实例。

我无法找到对电影记录类型执行“如果不存在则保存”类型操作的方法。我可以在查询的完成块中保存,但这两个操作不会是保证唯一性的原子事务。据我所知,CKQueryOperationCKModifyRecordsOperation.

有没有办法仅在单个事务中不存在该值时才插入记录?

0 投票
2 回答
2179 浏览

ios - 在 CloudKit 中查询引用的最佳方式?

假设我的 CloudKit 数据库中有 2 个实体:

照片有一个相册的 CKReference。这意味着 1 个相册可以包含许多照片(如预期的那样)。

我有一个屏幕,我想在其中显示所有相册,以及每个相册中有多少张照片。查询此问题的最佳方法是什么?如果我现在查询相册,每张相册对它的照片一无所知。

0 投票
1 回答
2967 浏览

ios - 如何通过 CloudKit 检索登录用户的 AppleID?

我想出了如何检索登录用户的名字/姓氏。有没有办法获得AppleID?!

0 投票
1 回答
1318 浏览

swift - 如何获取具有特定 ID 的记录?

我可以很容易地获得带有特定 ID 的记录。如果我需要特定的东西,那么我可以使用 CKQueryOperation。

我需要为其提供适当的谓词,但我不能将 ID 指定为谓词的参数,因为它不支持 CKRecordValue 协议。另一个想法是使用CKReference,但是如何编写正确的谓词呢?

如果我尝试使用字符串数组并再次评估 recordID.recordName 键路径:

我收到以下错误:

谓词格式输出:

任何帮助表示赞赏。