iphone - 有人面临小部件不能仅在某些 Apple 设备上运行的问题?
问题描述
我有一些应用程序,其中大多数都有使用 Coredata 获取数据的小部件,这些小部件按预期显示,并且这些应用程序具有相同的 Coredata 基本代码,用于获取和显示信息到小部件中。占位符和快照工作正常,小型、中型和大型小部件在 iPhone X、iPhone 7 Plus 上按预期工作,但在 iPhone 12 和 iPad Air 2 上不工作。下面使用的代码和屏幕截图给出了问题的一些想法。
有任何想法吗?
func getTimeline(in context: Context, completion: @escaping (Timeline<Entry>) -> ()) {
var entries: [WidgetContent] = []
let managedObjectContext = PersistenceController.shared.container.viewContext
let request = NSFetchRequest<NSFetchRequestResult>(entityName: "Item");
let currentDate = Date()
for hourOffset in 0 ..< 3 {
let entryDate = Calendar.current.date(byAdding: .hour, value: hourOffset, to: currentDate)!
var entry = snapshotEntry
var results = [Item]()
do { results = try managedObjectContext.fetch(request) as! [Item] }
catch let error as NSError { print("Could not fetch \(error), \(error.userInfo)") }
let randomIndex = results.randomElement()
let displayPic = randomIndex!.pic
let displayTimestamp = randomIndex!.timestamp
let displayTitle = randomIndex!.title
entry = WidgetContent(date: entryDate, pic: displayPic, timestamp: displayTimestamp!, title: displayTitle!)
entries.append(entry)
}
let timeline = Timeline(entries: entries, policy: .atEnd)
completion(timeline)
}
解决方案
感谢您的帮助,但安装 14.5 beta 后问题已得到解决。
推荐阅读
- node.js - 如何通过使用另一个数组作为标识符和值来更新 mongodb 中的数组?
- rust - 从行迭代器构建 Hashset
- sql - Tableau 自定义 SQL 未按预期工作
- haskell - 为什么在自定义任意实例 Haskell 的 QuickCheck 中不调用“收缩”?
- lookup - 如何在数组中使用 JSONata $lookup()?
- javascript - Dropzone缩略图生成
- python - 在 jupyter notebook 上使用逐行运行和注释
- html - 如何使三个容器以相同的大小增长
- javascript - 将项目添加到 dom 需要点击而不是反应?
- android - 使用麦克风检测其他应用程序 android