所以我遇到了一个CloudKit错误,当我搜索它时,它只得到一个Google的结果。在运行CKModifySubscriptionsOperation以创建初始用户的CK订阅时,我会得到错误。错误是Cannot create or modify field 'notif_num_subtitle_loc_args'
我很确定这以前是有用的,所以这有可能是在iOS 10.3或者CloudKit内部的东西中出现的吗?
下面是用于创建订阅的代码:
let subscriptionID = "MindscopeDownload"
let predicat
我有一个用Swift编写的简单iOS应用程序,它使用CloudKit将字符串保存到云中。用户可以随时更新字符串(覆盖原始字符串)。这在我的代码中工作得很好。如果用户在不同的设备上更改字符串,我希望应用程序自动更新(假设他们在iPad上对字符串进行了更改,我希望他们的iPhone自动更新)。我试图找到一个基本的CloudKit订阅教程,但所有这些教程都涉及更高级的实现。如何实现简单的CloudKit订阅?我的代码如下:
import UIKit
import CloudKit
class ViewController: UIViewController {
// This the t
我在我的iOS应用程序中使用数据库的NSPersistentCloudKitContainer。默认情况下,它似乎将所有事件记录到控制台,我假设是为了调试目的。这些消息如下所示:
CoreData: CloudKit: CoreData+CloudKit: -[PFCloudKitExportContext processAnalyzedHistoryInStore:inManagedObjectContext:error:]_block_invoke_4(201): Finished processing analyzed history with 1 metadata objects to
当应用程序运行时,我需要创建“动态”订阅,这些订阅不能预先确定,因为它们是基于为每个设备连接临时生成的唯一ID。在开发模式下运行时,CloudKit工作得很好,但是在分发模式下,我一直收到以下错误:
<CKError 0x1358436e0: "Invalid Arguments" (12/2006); server message = "attempting to create a subscription in a production container"; uuid = 41F4CA23-9849-40B1-8DB5-0030BBD91251; c
当用户首次启动你的应用程序时,CloudKit会创建一个唯一的用户记录并添加到公共数据库中。出于调试目的,我尝试删除此ID,以便CloudKit可以生成一个新的唯一ID,该ID与之前的ID不同。
但是,当尝试使用CloudKit仪表板删除所述记录时,我得到以下错误:
invalid attempt to delete user records directly
当我尝试使用deleteRecordWithID:方法在代码中删除它时,我得到了相同的错误。
有人知道删除用户记录的正确方法吗?这有可能吗?是否有其他解决方案可以通过强制创建新记录来解决我的问题?
我设法保存、更改和删除Apples CloudKit中的记录。我甚至收到了处理订阅的通知,但我无法找到的是,如何列出当前用户的所有订阅。
到目前为止,我的代码如下:
let operation = CKFetchSubscriptionsOperation()
operation.fetchSubscriptionCompletionBlock = { (d, e) -> Void in
println("got subscription")
if e != nil {
println("Error")
du
假设John开发了App和Heather开发了App。他们各自有不同的苹果开发者帐户,他们不在同一个团队中,或者以任何方式联系在一起。应用程序B由一个公共CloudKit数据库支持。有什么方法可以让应用程序A写到应用程序B的公共CloudKit数据库?也就是说,应用程序A能否做到这一点:
let DB = CKContainer(identifier: "iCloud.com.Heather.AppB").publicCloudDatabase
然后写入或读取此DB
我猜这是不允许的,但是否有一种方法来设置身份验证,使这是可能的?
我想与不使用我的应用程序的人共享公共数据库中的CloudKit资产。在CKAsset类中,只有一个指向本地文件的fileURL属性,所以没有给出URL。
但是,在CloudKit Web Services的文档中使用,为资产文件提供了一个downloadURL。
从我的应用程序中调用它会得到一个421状态代码,它被描述为"AUTHENTICATION_REQUIRED",因为它需要提供一个ckSession参数,这是一个“经过身份验证的用户的会话标识符”。它还传递一个redirectURL,用户可以在其中键入他们的iCloud登录,然后被重定向回web应用程序,现在带有会话标识