使用Firebase Cloud功能获取当前日期和时间

时间:2018-09-12 06:28:29

标签: android firebase firebase-realtime-database google-cloud-firestore google-cloud-functions

我对Firebase Cloud Functions非常陌生,所以我不知道我要问的问题是否有效。

因此,基本上,我正在开发一个Android幻想游戏(它使用Firebase数据库),该游戏根据比赛的日期和时间有效性开始和结束多个比赛。所以我想获取当前日期和时间,以便可以计算出参加比赛的剩余时间并将其保存在数据库中(使用CLoud函数)

因此,要获取当前时间,我应该使用“ https://timezonedb.com/api”之类的API还是要采取其他措施来获取时间。

此外,如何根据截止日期和当前时间(使用TypeScript语言)计算剩余时间?

我浏览了许多视频和文档,但找不到任何方法。简短的解释和一些有用的链接会很有帮助。

2 个答案:

答案 0 :(得分:1)

由于您已经使用过实时数据库,因此可以使用ServerValue.TIMESTAMP从Firebase获取当前时间,而无需使用Cloud Functions。

示例代码段:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
String key = ref.push().getKey(); // this will create a new unique key
Map<String, Object> value = new HashMap<>();
value.put("name", "shesh");
value.put("address", "lucknow");
value.put("timestamp", ServerValue.TIMESTAMP);
ref.child(key).setValue(value);

答案 1 :(得分:1)

使用在Cloud Functions中运行的代码,您可以相信服务器的时间感觉是准确的。对于在节点环境中运行的JavaScript,只需运行Date.now()以返回自unix纪元以来的毫秒数的时间戳。没有其他事情要做。