嘿,我想在應用程序當前點擊一個按鈕但TIMESTAMP不正確時獲取當前TIMESTAMP。 TIMESTAMP有時會顯示時間,有時會提前10分鐘。這裏是代碼獲取時間戳錯誤的firebase android
timestapmReference.addValueEventListener(new ValueEventListener() {
public void onDataChange(DataSnapshot dataSnapshot) {
final long timeStampLong = (long) dataSnapshot.child("time").child("timestampQuestionSeen").getValue();
final DatabaseReference questionSeenReference = FirebaseDatabase.getInstance().getReference().child("users").child(uid).child("questions").
child(imagename);
questionSeenReference.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (!dataSnapshot.hasChild("questionSeen")) {
questionSeenReference.child("questionSeenTime").setValue(timeStampLong);
questionSeenReference.child("questionSeen").setValue("1");
}
questionSeenReference.removeEventListener(this);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
timestapmReference.removeEventListener(this);
}
public void onCancelled(DatabaseError databaseError) {
}
});
timestapmReference.child("time").child("timestampQuestionSeen").setValue(ServerValue.TIMESTAMP);
您是在模擬器上還是在真實設備上測試您的應用程序? –
我在真實設備上測試它@AlexMamo –
使用'ServerValue.TIMESTAMP'是設置時間戳的核心方式,正如我所看到的,您的代碼看起來很好。您的日期和時間是否正確設置在您的手機上?檢查您的手機設置並將其與計算機的時間進行比較。 –