如何解决Swift:从 iCloud 随机下载在 Watch App 中不起作用
我很自豪能够创建 Apple Watch 应用。应用程序启动后,它应该从 iCloud 获取一个字符串。 当我通过 Xcode 或 TestFlight 安装该应用程序时,它可能无法正常工作(或可能工作)。因此,如果没有,我卸载该应用程序并在之后立即重新安装,然后它就可以工作了。有时我还必须重新启动 Xcode 才能使其在 Watch 上运行。
(编辑:我发现只需等待几个小时并再次打开应用程序(无需重新安装)也可以解决问题。但几个小时后它不再工作,尽管没有连接设置改变了。)
我不知道为什么会发生这种情况。这是同一个产品。虽然上传到 iCloud 没有问题,但它每次都有效。
我使用的代码:
var counterCloud = [String()]
func getDataFromCloud() {
let query = CKQuery(recordtype: "Counter",predicate: nspredicate(value: true))
query.sortDescriptors = [NSSortDescriptor(key: "modificationDate",ascending: false)]
let operation = CKQueryOperation(query: query)
counterCloud.removeAll()
recordIDs.removeAll()
operation.recordFetchedBlock = { record in
counterCloud.append(record["counter“]!)
recordIDs.append(record.recordID)
}
operation.queryCompletionBlock = { cursor,error in
dispatchQueue.main.async {
print("counterCloud: \(counterCloud.first ?? 0)")
}
}
database.add(operation)
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。