除了能够链接不同的CKQuerys,以及设置检索结果限制的能力之外,为什么还需要CKQueryOperation?基本上这两个功能是吗?因为我只是不确定拥有 CKQueryOperational 的原因是什么。
CKQueryOperation
对象是可用于对数据库执行查询的具体操作。查询操作采用您提供的查询参数,并将这些参数应用于指定的数据库和区域,从而将任何匹配的记录异步传递到您提供的块。
NSObject-> NSOperation-> CKOperation-> CKDatabaseOperation-> CKQueryOperation
查询仅限于单个区域中的记录。对于新查询,您可以在初始化查询操作对象时指定区域。对于基于游标的查询,游标包含区域信息。若要在多个区域中搜索记录,必须为要搜索的每个区域创建单独的CKQueryOperation
对象,尽管可以使用同一CKQuery
对象初始化每个区域。
CKconvenience例程非常适合它们本身;对CloudKit的介绍,但是在几个简短的点头程序中,您很快就会发现它们的目的有一些严重的局限性。
使用 CKOperations,您可以进行更改,例如更改您想要/关心的服务质量等内容,并以比 CK便利方法更多的控制来监控它们的执行。
也许不用说,在被迫使用 CKoperations 进行记录维护后,您可能希望构建,在整个应用程序的代码中使用相同的技术。