问题标签 [ckfetchnotificationchange]
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.
ios - cloudKit:公共数据库中的 CKFetchRecordChangesOperation
我使用 cloudKit 构建了一个 iOS 应用程序。我正在尝试批量获取 cloudKit 中的数据,以获取设备和 cloudKit 之间的增量,但似乎 CKFetchRecordChangesOperation 在公共数据库中不起作用。我唯一的选择是 CKQuery 来获取我的数据吗?例如:
我会非常感谢你的帮助。
ios - CloudKit:notificationChangedBlock 无响应
我在使用 CloudKit 的应用程序中工作。我正在实现一种将增量从 CloudKit 获取到我的应用程序的方法(我正在使用公共数据库)。我从 fetchNotificationChangesCompletionBlock 块收到响应,但我没有从 notificationChangedBlock 收到响应。
这是我的代码:
你们中的任何人都知道我做错了什么或我的代码有什么问题吗?
我会非常感谢你的帮助。
ios - CKFetchNotificationChangesOperation 有时不返回 UPDATE、DELETE 通知
CKFetchNotificationChangesOperation
返回 INSERT 操作,但不总是返回 UPDATE 和 DELETE。当我将应用程序提交到 App Store 时,DELETE,UPDATE 最后工作,但现在不再工作了。为什么?我创建了如下订阅:
仪表板显示所有树触发器:
我不使用 any alertBody
,所以通知是所谓的静默通知,这可能是原因吗?
在CloudKit 提示和技巧中,讲师说订阅需要 APS 功能才能从开发人员门户打开应用 ID。我想我没有,但我只想获取通知,只有在可行的情况下才推送。
后台能力?- 相同的
需要在应用的 info plist 中设置 APS 环境密钥。- 我想我有它。
ios - 更新通知的替代方法不起作用
UPDATE 通知停止工作。你有什么解决方法,直到 Apple 想出办法?
CKFetchNotificationChangesOperation 有时不返回 UPDATE、DELETE 通知 CloudKit 推送通知记录更新停止工作 https://forums.developer.apple.com/thread/7288
我的快速修复,每分钟,当用户触发时UIRefreshControl
,我下载自上次更新以来修改的所有记录。有用。但我心里有个更好的主意,好奇,你怎么看。任何缺点。
我正在考虑向Change
数据库添加一个表。它将有一个recordName
, recordType
,changeType
字段。changeType
可以有insert
, update
,delete
字符串值。(或相应的 int 枚举)
我会CKSubscription
只用Change
桌子创建和观察。总是当在自定义表中创建、更新、删除记录时,我会做两件事,做那个动作,作为第二个动作,我会在Change
表中创建一个“日志条目” 。因为它是 中的Insert
操作Change
,并且插入通知似乎有效,所以所有设备都会收到通知。他们可以下载引用的记录。
你看到什么缺点了吗?
cloudkit - CloudKit 错误:更改令牌已过期,需要重置
斯威夫特 3.1,Xcode 8.3.3
我不断收到来自 CloudKit 的错误,我不知道该怎么办。
我正在跟踪来自 CloudKit 的通知,如下所示:
错误说:
<CKError 0x174241e90:“更改令牌已过期”(21/1016);服务器消息=“错误代码:RESET_NEEDED”;uuid = ...; 容器 ID = "...">
CKServerChangeToken
文档没有提到任何关于重置令牌的内容,CloudKit 仪表板也没有提供任何此类选项。
知道我应该做什么吗?