问题标签 [cksubscription]

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 回答
2195 浏览

ios - 有没有办法在同一台 Mac 上调试两个 iOS 设备?

我想不可能从同一个 Xcode 中获得,而是通过多次打开 Xcode 来实现?还是有什么其他技巧?我正在测试它们之间的 CKSubscription 和 CloudKit 通信。

0 投票
2 回答
1019 浏览

ios - 如何通知另一台设备 CloudKit 记录已更新?

CKSubscription 文档说:当记录修改导致订阅触发时,服务器会向所有具有该订阅的设备发送推送通知,但对记录进行原始更改的设备除外。

假设我有两个设备:设备 1 和 iPad 和设备 2 都使用相同的iCloud 帐户登录。让我们假设两个设备都订阅了某个记录类型的记录更新。

我的代码看起来像这样(我已经取出了一些家务)

在我看来,当一台设备更新记录时,应该通知另一台设备。但这不是正在发生的事情 - 没有通知。在 WWDC 2014 Advanced iCloud 视频中,他们谈到当一台设备将通知标记为已读时会收到通知,但我也没有成功。

当登录到同一帐户的另一台设备更新记录时,是否有人成功通知了一台设备?

0 投票
0 回答
316 浏览

notifications - CloudKit 订阅仅适用于仪表板操作

我的订阅基于一个简单的谓词

它只是用特定的邀请代码观察一条记录,并在删除记录时发出通知(邀请已被其他用户接受)。但是,如果我以编程方式从其他设备中删除邀请,它不会触发任何推送通知。但是,当我从仪表板中删除邀请时,它确实会向我发送通知。有人可以帮我解决这个错误吗?

PS。我很确定订阅已成功保存在服务器上 - 我在仪表板上看到了它。

更新:

此处给出了答案 通过 CKSubscription 观察 CKRecord 删除不起作用

0 投票
1 回答
549 浏览

ios - CloudKit、远程通知和 aps 环境

在设置 CloudKit 远程通知时,我启用了“远程通知”功能,它将远程通知字段添加到我的 Info.plist。但是后来我在控制台中收到了这个错误:

错误域 = NSCocoaErrorDomain 代码 = 3000“找不到应用程序的有效 'aps-environment' 授权字符串” UserInfo=0x17db9850 {NSLocalizedDescription=找不到应用程序的有效 'aps-environment' 授权字符串}

当我提交到 iTunes Connect 时,这个错误会通过电子邮件发送给我:

缺少推送通知权利- 您的应用似乎包含用于注册 Apple 推送通知服务的 API,但应用签名的权利不包括“aps-environment”权利。如果您的应用程序使用 Apple 推送通知服务,请确保您的应用程序 ID 在配置门户中启用推送通知,并在使用包含“aps-environment”权利的分发配置文件签署您的应用程序后重新提交。

好的,所以我应该更新我的配置文件 - 但是当我尝试这样做并启用推送通知时,它需要我创建 SSL 证书以在我的服务器上使用。不过我正在使用 CloudKit - 我没有服务器。如何更新我的配置文件?

0 投票
1 回答
168 浏览

cloudkit - 这是一种通过 CKSubscription 获取用户开始使用应用程序的通知的方法吗?

我需要知道用户何时开始使用应用程序。我知道我可以设置CKSubscription任意记录类型,但它似乎Users不起作用。

0 投票
2 回答
539 浏览

ios - CloudKit + no valid aps-environment entitlement 错误

我尝试在我的应用程序中使用CloudKit 订阅,但didReceiveRemoteNotification没有被触发。

我保存CKSubscriptionCloudKit. 为了确保它们存在,当应用程序启动时,我将它们绘制出来,例如:

<CKSubscription: 0x15576310; ; Query Subscription: recordType=DailyVote, predicate=TRUEPREDICATE, subscriptionOptions=7, subscriptionID=1FA456A6-9BA5-411D-97B9-1EB57121A5D0, zoneID=(null)> predicate: TRUEPREDICATE subscriptionType: (Enum Value) subscriptionOptions: C.CKSubscriptionOptions

我尝试按照苹果文档的建议在 APN 服务器上注册我的设备,但错误委托方法被调用,并显示消息:

  • CloudKit功能开启
  • 我没有无效的配置文件
  • 我已经成功了:Xcode> Preferences> Accounts> pick your Account> pick your Team> View Details>PRESS REFRESH BUTTON
  • 我什至用新的 iCloud 容器创建了一个新的应用程序,移动了所有逻辑,但错误是一样的,订阅通知不起作用。
0 投票
1 回答
462 浏览

ios - 如何从 CloudKit 更新所有客户端记录?

我的应用程序在本地存储所有存储的记录CloudKit。所以不是大数据小手机的概念,而是全数据服务器-全数据客户端的概念。当应用程序再次启动时,我不时需要所有更新。

我应该为所有现有的记录类型设置CKSubscription吗?

  • 服务器可能会收到很多通知,即使我猜有“静默模式”,iCloud 通知集合的存储容量也应该有限制。

我应该在应用启动时删除所有本地记录并再次下载CloudKit以获取更新吗?

  • 每次都需要更新太多数据。
0 投票
1 回答
68 浏览

ios - 用户可以从设置中删除 CKSubscriptions 吗?

我很好奇用户在被接受后是否可以拒绝订阅?

0 投票
1 回答
241 浏览

ios - 如何使用 CKSubscription 检查 CKAsset 更改?

您如何检查存储的图像是否CKAsset已更改CloudKit

CKNotification 文档说有关desiredKeys:

  • 数组中最多可以包含三个键。
  • 对于您指定的键,允许的值为NSStringNSNumberCLLocationNSDateCKReference。您不能指定其值包含其他数据类型的键。

CKAsset不在名单上

0 投票
1 回答
47 浏览

cloudkit - 与 Google Cloud Datastore 中的 CloudKit CKSubscription 类似的服务?

我一直在学习 CloudKit,CKSubscription尤其是它的 s。由于 CloudKit 和 Google Cloud DataStore 似乎有许多相似之处,我想知道这一点:

是否有CKSubscription可用于 Google Cloud Datastore 的类似服务,即我可以向服务器提交一次订阅(连同查询)并让它向我推送有关更改的通知,而不是通过重复获取来拉取更改(使用相同的查询)?