我想获取Firebase当前时间戳,但是找不到方法来获取它。我想要像图片中展示的那样保存子项。为此,我需要获取时间戳并相应地获取日期。请帮忙……
我想获取Firebase当前时间戳,但是找不到方法来获取它。我想要像图片中展示的那样保存子项。为此,我需要获取时间戳并相应地获取日期。请帮忙……
ServerValue.TIMESTAMP
来设置服务器时间,它是一个Map<String, String>
类型,其中包含{".sv" : "timestamp"}
对。当它被发送到Firebase数据库时,它将被转换为长整型Unix epoch time,如1469554720
。DatabaseReference.push()
获取保证唯一的键。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);
Date
类将其转换为该格式。请注意,保留HTML标记。exports.getTimeStamp = functions.https.onRequest((req, res)=>{
res.setHeader('Content-Type', 'application/json');
res.send(JSON.stringify({ timestamp: Date.now() }));
});
import firebase from 'firebase/compat/app'; //v9
export const getNowTimeStamp = () =>{
return firebase.firestore.Timestamp.now();
}
导入方法后
import { getNowTimeStamp } from '..path/to/firebase.utils';
console.log( getNowTimeStamp().toMillis() );
在安卓上,我是这样做的
index.js / 服务器端
const functions = require('firebase-functions');
exports.stamp = functions.https.onCall(() => {
var d = new Date();
console.log('TimeStamp_now : '+d.getTime());
return { timeStamp: d.getTime() };
});
someclass.kt / 客户端
lateinit var functions: FirebaseFunctions
var ret :Long = 0
FirebaseApp.initializeApp(this)
functions = FirebaseFunctions.getInstance()
val returnFC = functions.getHttpsCallable("stamp").call()
returnFC.continueWith { task ->
val resultFC = task.result?.data as Map<String, Any>
resultFC["timeStamp"] as Long
ret = "${resultFC["timeStamp"]}".toLong()
val cal = Calendar.getInstance()
cal.timeInMillis = "$ret".toLong()
var date = DateFormat.format("dd-MM-yyyy", cal).toString()
Log.d("current date:", date)
Log.d("timeStamp_from_function :", "$ret")
resultFC
}
returnFC.addOnSuccessListener {
Log.d("OnSuccessListener :", "success")
}
returnFC.addOnFailureListener {
Log.d("OnFailureListener:", "failure")
}
我收到了返回值并且到达了:TimestampConvert 看起来很不错