Android 更改时间后获取上一个(旧)时间

Android 更改时间后获取上一个(旧)时间,android,time,android-broadcast,Android,Time,Android Broadcast,我可以通过广播事件(ACTION\u time\u CHANGED和ACTION\u DATE\u CHANGED)获得时间更改事件 我需要获得时间更改后的上一次时间。例如,当前时间为10:00。我要把时间改到12点。时间更改后,时间将更改为12:00,但我需要获取时间更改时的上一个时间(10:00) 注意:可以从任何其他应用程序或设置更改时间。在更改计时任务时,只需将当前或旧时间毫秒存储在共享参考中即可。即,您可以使用任何时间,即使应用程序不会自行堆叠时间。也许我找到的解决方案可以帮助您: (

我可以通过广播事件(
ACTION\u time\u CHANGED
ACTION\u DATE\u CHANGED
)获得时间更改事件

我需要获得时间更改后的上一次时间。例如,当前时间为10:00。我要把时间改到12点。时间更改后,时间将更改为12:00,但我需要获取时间更改时的上一个时间(10:00)


注意:可以从任何其他应用程序或设置更改时间。

在更改计时任务时,只需将当前或旧时间毫秒存储在
共享参考中即可。即,您可以使用任何时间,即使应用程序不会自行堆叠时间。

也许我找到的解决方案可以帮助您:

()

上述解决方案可以使用
System.currentTimeMillis()
在设备引导时设置静态变量,并使用
SystemClock.elapsedRealtime()
求和。有了这笔钱,你就有时间了


但是有一个问题(我不知道这对您是否重要),如果用户不重新启动设备,那么您的差异将
==0
,并且您将无法在旧的
系统和实际的
系统之间存在此差异。currentTimeMillis()

获取一个静态变量,每次更改时间值时,将上一个值设置为静态变量,然后在任意位置访问它。我的应用程序不会更改时间。任何其他应用程序都可以更改时间。那么我如何才能保持以前的时间(更改时间之前)我的应用程序不会更改时间。它可以从任何其他应用程序或设置进行更改。如何获取上一次..无论何时收到此接收事件,只需获取当前时间毫秒,然后存储它,我认为更改前的最后一次当我获取当前时间时,将仅给出更改后的时间。它不会给以前的时间(在改变时间之前)看看这个,然后我不知道哥们,你可能需要对此进行一些研发,如果你能得到,那么请让我也知道。:)它有效,好主意。我添加的一件事是通过计算旧时间和新时间之间的差异来调整“开始时间”(即您在启动时存储的时间),并在每次更改后添加到“开始时间”,这样,当您再次使用此方法时,您将拥有更新且正确的时间参考。这是一个很好的解决方案。但我有一个问题,时间设置有时会在启动完成之前收到。在安卓系统中,为特定的启动会话提供一些系统id会很好,但我找不到。