TimelineProvider中的NSFetchrequest始终返回空数组

时间:2020-10-14 16:07:40

标签: swift core-data swiftui cloudkit widgetkit

我目前正在开发具有CloudKit集成的应用程序,并且正在使用Widget。 为了从CloudKit检索数据,我在getTimeline()函数中获取了数据:

func getTimeline(in context: Context, completion: @escaping (Timeline<SimpleEntry>) -> Void) {
    let fRequest = NSFetchRequest<MyEntity>(entityName: "MyEntity")
    do {
        let myData = try PersistenceController.shared.container.viewContext.fetch(fRequest)

        let entry = SimpleEntry(date: Date(), data: myData)
        let timeline = Timeline(entries: [entry], policy: .atEnd)
        completion(timeline)
    } catch {
        // Handle Error
    }
}

我在我的小部件中激活了iCloud功能,并将所有与CoreData相关的文件(xcdatamodeld和Persistance.swift)的目标都设置到了我的小部件。

但是,每次我运行代码时,let myData是一个空数组,好像没有存储任何数据。

0 个答案:

没有答案