Android中可靠时钟的好策略?

时间:2013-04-20 21:11:25

标签: android

我正在开发一个需要与网络服务器同步的应用程序,如果已经过了24小时。每次交互都记录在数据库中,以便我可以跟踪上次同步时间,因此当应用程序启动时,它会检查数据库以查看是否需要同步。

到目前为止,我发现没有合适的时钟可用于可靠和一致的时间测量,时钟要么是临时的(测量正常运行时间),要么用户可以更改它们的日期,所以有没有好的交易策略有这些问题吗?

1 个答案:

答案 0 :(得分:2)

这是软件工程中所有人的常见问题,唯一正确的答案是:没有网络电话。 测量时间是你无法普遍做到的。时区,不同的用户时钟,夏令时,所有这些东西发生。要么使用System.elapsedRealTime()之类的东西,比如启动监听器,要么问服务器时间是什么(这实际上是的想法,因为它可以a)失败b)可怕的慢c)成本用户钱和d)浪费电池。 您可以做的另一件事是在特定时间(例如凌晨4点)自动同步。这对用户更改时间或夏令时没有帮助,但它可以在99%的情况下使用。用户通常不会经常改变他们的时间:)