【问题标题】:How to convert selected timestamp into firebase server timestamp android如何将选定的时间戳转换为firebase服务器时间戳android
【发布时间】:2021-11-10 18:31:17
【问题描述】:

我想将输入的时间戳转换为 Android 的 Firebase 服务器时间戳

例如选择的时间戳是 -> 1631724053。注意这个时间戳是从选择的日期获得的。

想要转换的时间戳(firebase 服务器时间戳)是 -> 2021 年 1 月 1 日下午 3:37:59 UTC+5:30

提前致谢

【问题讨论】:

    标签: android firebase google-cloud-platform google-cloud-firestore timestamp


    【解决方案1】:

    您没有指定您使用的是 Java 还是 Kotlin,但是您可以从 Android date 创建一个 Firestore Timestamp

    在调用 Timestamp 构造函数时,您将传入您的日期对象,因此请确保您使用的是 Android 文档中所述的有效日期。

    【讨论】:

      【解决方案2】:

      Firestore Timestamp 类型的对象表示:

      时间戳表示独立于任何时区或日历的时间点,以 UTC 纪元时间的纳秒分辨率表示为秒和秒的分数。

      正如@Hydra 在她的评论中已经提到的,您可以将 long 值转换为:

      1631724053
      

      实际上代表的是:

      Wednesday, September 15, 2021 4:40:53 PM
      

      进入 Firestore 对象会绕过构造函数的时间纪元。但是,处理这种情况的更合适的方法是使用FieldValue.serverTimestamp(),它实际上是一个发送到 Firebase Firestore 服务器的令牌,在那里确定实际的时间戳并将其写入数据库。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-05-03
        • 1970-01-01
        • 2011-07-03
        • 1970-01-01
        • 1970-01-01
        • 2022-07-20
        • 2014-06-27
        • 1970-01-01
        相关资源
        最近更新 更多