我在 android 和 iOS (swift3) 中开发两个 native 应用程序,我的一些类使用 Date 对象,但是当我将一个 Date 对象从 android 保存到 Firebase 实时数据库中时,结构是这样的:
创建日期:{
日期:3
天:2
小时数:17
分钟:27
月:9
秒数:43
时间:1507062463000
时区偏移量:180
年份:117
}
但这不是 iOS 中的常见结构(当然是通过我的搜索)。
什么是更好的解决方案:
- 在 iOS 中创建一个编码器/解码器来读写这个结构?
- 更改 android 中的读写以使用 is 日期保存在 firebase 中?像这样 (yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ)
谢谢
最佳答案
我推荐使用 FIRServerValue.timestamp()
。这将确保在将数据保存到数据库时使用 Firebase 服务器时间戳,这是最准确的时间,因为它不能被用户篡改,并且在 iOS 和 Android 上完全相同。
保存的数据是自 1970 年以来的毫秒数,您可以轻松将其转换为日期对象。
例如( swift ):
myRef.setValue(FIRServerValue.timestamp())
编辑:Firebase 4
myRef.setValue(ServerValue.timestamp())
关于java - 在 iOS/Android 和 Firebase 中处理 Date 的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46570158/