Swift CloudKit使用另一个项目数据库



我正在尝试访问我的应用程序中的另一个项目,并且有一个查询问题。这是一个相同的帐户,我没有得到其他错误?我需要用另一个查询替换此查询吗?

publicDB.perform(query, inZoneWith: nil , completionHandler: ({ results, error in

我的错误是:

参数标签'(_:,, inzonewith:,pleastionhandler :)'不匹配任何可用的过载

这是我用来设置数据库和容器的代码。该项目(myoldProject.oldappname)的命名与我当前使用的应用程序的命名不同。我已经在iCloud设置中的自定义容器中选择了它。所有其他查询似乎都可以。

let container = CKContainer(identifier: "ICloud.MyOldProject.OldAppName")
let publicDB = CKContainer(identifier: "ICloud.MyOldProject.OldAppName")
var publicDatabase: CKDatabase?

这是陈述问题的另一种方法:

这可以正常工作:

let container = CKContainer.default()
var publicDatabase: CKDatabase?
var currentRecord: CKRecord?
let publicDB = CKContainer.default().publicCloudDatabase

这不起作用,给我错误!

let container = CKContainer(identifier: "ICloud.OldProject.AppName”)
var publicDatabase: CKDatabase?
var currentRecord: CKRecord?
let publicDB = CKContainer(identifier: "ICloud.OldProject.AppName")

我得到了它!

让publicDB = ckcontainer(标识符:" iCloud.com.project.appname")。

我忘记了标识符中的.com,我忘了添加.publicCloudDatabase

相关内容

最新更新