如何在远程服务器中保留 HKQueryAnchor

How to persist HKQueryAnchor in remote server

我知道可以在设备上保留 HKQueryAnchor,但是否可以通过某种方式在远程服务器上保留它?

更具体地说,我不知道 HKQueryAnchor class 的内部结构,所以我不知道如何将它变成 Json 发送到服务器。

还有其他办法吗?

使用 NSKeyedArchiverHKQueryAnchor 序列化为 NSData 并将 NSData 的字节内容存储在服务器上。这与您在设备本地持久化锚点的方法相同(例如,在用户默认设置中)。

我花了一些时间才找到确切的代码来遵循@Allan 的建议,所以我会把它留在这里以防它对任何人有帮助。

let data = NSKeyedArchiver.archivedData(withRootObject: anchor)
String encoded = data.base64EncodedString()