当我向 Firebase 实时数据库添加新值时如何保存当前日期/时间

2023-11-21

当我通过控制面板向 Firebase 实时数据库添加新值时,我想将当前日期/时间保存在特定字段中。

我怎样才能做到这一点?

请帮我。


Answer recommended by Google Cloud Collective

最佳实践是将数据保存为TIMESTAMP像这样ServerValue.TIMESTAMP.

DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
Map map = new HashMap();
map.put("timestamp", ServerValue.TIMESTAMP);
ref.child("yourNode").updateChildren(map);

另请记住,当您设置TIMESTAMP,您将其设置为Map,但是当你检索它时,你将它检索为Long。要取回数据,我建议您使用以下方法:

public static String getTimeDate(long timestamp){
    try{
        DateFormat dateFormat = getDateTimeInstance();
        Date netDate = (new Date(timestamp));
        return dateFormat.format(netDate);
    } catch(Exception e) {
        return "date";
    }
}

Edit:模型类应该如下所示:

public class YourModelClass {
    //private fields
    private Map<String, String> timestamp;

    public YourModelClass() {}

    //public setters and getters for the fields

    public void setTimestamp(Map<String, String> timeStamp) {this.timestamp= timestamp;}
    public Map<String, String> getTimestamp() {return timestamp;}
}

记住,ServerValue.TIMESTAMP只是 Firebase 实时数据库在写入操作期间用作子值时在服务器端转换为数字的令牌。该日期仅在写入操作完成后才会出现在数据库中。

为了得到timestamp,还有另一种方法,那就是编写一个函数Firebase 的云功能这将很简单:

exports.currentTime = functions.https.onRequest((req, res) => {
    res.send({"timestamp":new Date().getTime()})
})

您可以将其托管在 Cloud Function 中并获取服务器时间戳,而无需用户交互。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当我向 Firebase 实时数据库添加新值时如何保存当前日期/时间 的相关文章

随机推荐

  • EditText 自定义字符串格式

    我搜索了与我的问题类似的每个问题 但没有成功 我的问题是这样的 我想格式化一个字符串EditText打字时 格式是这样的 它始终是一个 19 位数字 012345 01 0123456789 0 正如您所看到的 我想在用户打字时需要时添加空
  • 判断状态栏是在顶部还是底部?

    我想弄清楚如何判断状态栏的位置 顶部或底部 我尝试检查HierarchyViewer但没有看到状态栏视图 我真正需要弄清楚的是 在给定上下文的情况下 返回一种方法boolean 如果栏位于顶部则为 true 如果不在顶部则为 false 就
  • 如何确定 System.Diagnostics.Process 是 32 位还是 64 位?

    I tried process MainModule FileName Contains x86 但它引发了 x64 进程的异常 Win32Exception 仅完成了 ReadProcessMemory 或 WriteProcessMem
  • 在页面加载时重复并添加列到标题和项目模板

    除了显示数据表中的数据之外 我没有使用中继器 我正在构建一个网格 它显示用户列表和用户已分配的角色列 用复选框显示 下面用 true false 显示 但假装它们是复选框 ex 代表姓名 呼叫者 结案者 经理 超级用户 鲍勃 真实 真实 假
  • 如何使用 Nokogiri 将嵌套哈希转换为 XML

    我有很多级别的嵌套哈希 例如 foo gt bar foo1 gt foo2 gt bar2 foo3 gt bar3 foo4 gt foo5 gt bar5 我怎样才能将它们转换成这样的XML
  • 如何选择 nHibernate 子查询结果的 Count(*)

    为了在 nHibernate 中分页查询 我需要执行以下操作 Select count from Select e ID e Name from Object as e where 我尝试过以下方法 select count from Ob
  • C# 将字符串“0”解析为整数

    我有一台新笔记本电脑在工作 本周早些时候运行的代码今天不起作用 之前工作的代码经过简化 while dr Read int i int Parse dr GetString 1 现在 当数据库值为 0 时 它会失败 有时 但不可靠 这会起作
  • 使用 pandas 创建矩阵结构

    我已将包含代码和系数数据的以下 CSV 文件加载到以下数据框 df 中 CODE COEFFICIENT A 0 5 B 0 4 C 0 3 import pandas as pd import numpy as np df pd read
  • PHP 中的 A* 搜索算法 [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 有没有人有实施A 算法在 PHP 中 我知道维基百科有一个伪代码和一个 C 伪代码的链接 但我似乎找不到已经用 PHP 编写的伪代码 我也在寻找一种高效的书面 A 算法 None
  • 理解java 8流的过滤方法

    我最近了解到StreamJava 8 中的 s 并看到了这个示例 IntStream stream IntStream range 1 20 现在 假设我们想要找到第一个既能被 3 又能被 5 整除的数字 我们可能会filter两次并且fi
  • 具有特定类型的 Backbone.Js 集合

    我有一个名为 History 的 BackboneJS 集合 它可以包含多个 Backbone JS 模型之一 从 HistoryItem 扩展 而 HistoryItem 又从 Backbone Model 扩展 我试图找到一种在加载时重
  • 身份“iPhone Developer”与钥匙串中任何有效、未过期的证书/私钥对不匹配

    我想在设备中测试我的应用程序 但我被这个错误困扰了几个小时 身份 iPhone Developer 与钥匙串中任何有效 未过期的证书 私钥对不匹配 我已经关注了本指南 我在 stackoverflow 上搜索了类似的问题 这可能会有所帮助
  • 检查颜色是否为蓝色(ish)、红色(ish)、绿色(ish)、

    我想实现一个可以按颜色过滤图像的搜索 我的图像模型最多包含该特定图像中出现的 10 个 UIColor 现在我想要一个过滤器 例如蓝色 绿色 红色 黄色 如何检查 使用指定的容差 该特定图像是否包含蓝色 绿色 我尝试使用 CIE94 差异
  • 如何破译 boost asio ssl 错误代码?

    我在 boost asio ssl 实现中偶尔会出现通信失败 boost 返回的超级有用的错误消息是 asio ssl 336458004 我怀疑数字是由 SSL 标志组成的某种聚合构造 我说因为 linux 错误代码 boost asio
  • 从 FileSystemWatcher 错误中恢复的最佳实践是什么?

    After a FileSystemWatcher Error事件被提出 我不知道下一步该做什么 该例外可以是 相对 较小的例外 例如 目录中一次更改太多 这不会影响观察者的观看过程 但它也可能是一个大问题 例如观看的目录被删除 在这种情况
  • 如何以编程方式设置可发现时间而无需用户确认?

    我通常用这个 private void ensureDiscoverable if D Log d TAG ensure discoverable if mBluetoothAdapter getScanMode BluetoothAdap
  • 不使用 Android 导航抽屉显示叠加层

    我想知道是否可以删除最近实现的导航抽屉所做的自动覆盖 第二张图的灰色层 你只需要设置setScrimColor int color 给你的DrawerLayout mDrawerLayout setScrimColor Color WHIT
  • postgresql:共享内存不足?

    我正在使用 Python 和 psycopg2 运行大量查询 我创建了一个包含约 200 万行的大型临时表 然后使用以下命令一次从中获取 1000 行cur fetchmany 1000 并运行涉及这些行的更广泛的查询 不过 广泛的查询是自
  • 如何使用 StoreKit 2 进行恢复?

    iOS 15 引入了 StoreKit 2 我正在研究它 看看是否可以在我现有的应用程序中采用它 但我不知道该怎么做 特别是 我不知道如何实现所需的恢复功能 例如 如果用户删除了我的应用程序 我想我们应该使用Transaction late
  • 当我向 Firebase 实时数据库添加新值时如何保存当前日期/时间

    当我通过控制面板向 Firebase 实时数据库添加新值时 我想将当前日期 时间保存在特定字段中 我怎样才能做到这一点 请帮我 Answer recommended by Google Cloud Collective 最佳实践是将数据保存