设备离线时如何获取Android设备的正确当前日期和时间

我创建了一个android应用,在此应用中,用户可以保存一些任务。这些任务将保存在设备中,并且当用户上线时,任务将同步到服务器。用户保存任务时,我需要知道正确的日期和时间。诸如Calendar.getInstance()new

Date()返回设备时间之类的代码,如果设备时间不正确,则任务会以错误的日期保存。这个应用程式必须离线运作,这一点很重要。并且由于该应用程序的冗长性,用户可能有意更改设备时间。对不起,我的英语不好。

回答:

当用户启动(BOOT_COMPLETED BroadcastReceiver)或网络状态更改(CONNECTIVITY_CHANGE and

WIFI_STATE_CHANGED

BroadcastReceiver)时,我尝试连接到NTP服务器,然后将该日期存储SystemClock.elapsedRealtime()在数据库中。之后,只要我想获得正确的日期,就可以SystemClock.elapsedRealtime()从数据库中获取新值并计算该值与elapsedRealtime值的差,并将该差添加到我存储在数据库中的日期中。

以上是 设备离线时如何获取Android设备的正确当前日期和时间 的全部内容, 来源链接: utcz.com/qa/404237.html

回到顶部