如何在Android中获取实际时间和日期?

时间:2018-07-11 13:33:50

标签: java android

我正在使用一个Android应用,向用户显示时间和日期以进行预订。目前,我正在使用系统时间和日期,但问题是用户可以随时更改它。那么如何获得正确的时间和日期呢?我已经在3天的时间内解决了这个问题,但是没有找到任何解决方案。 任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:0)

也许可行:

selectedRow

答案 1 :(得分:0)

这对我来说很好,但是在几秒钟内不准确,这对我来说不是一个大问题。使用过的firebase实时数据库。

final DatabaseReference offsetRef = 
FirebaseDatabase.getInstance().getReference(".info/serverTimeOffset");
    offsetRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot snapshot) {
            long offset = snapshot.getValue(Long.class);
            long estimatedServerTimeMs = System.currentTimeMillis() + offset;
            SimpleDateFormat sdf = new SimpleDateFormat("MMM dd,yyyy HH:mm");
            Date resultdate = new Date(estimatedServerTimeMs);
            Log.d(Tag,"date from firebase is "+sdf.format(resultdate).toString());
        }

        @Override
        public void onCancelled(DatabaseError error) {
            System.err.println("Listener was cancelled");
            Log.d(Tag,"error is "+error.toString());
        }
    });