Android - 系统时间

1、System.currentTimeMillis():获取的是系统的时间,可以使用SystemClock.setCurrentTimeMillis(long millis)进行设置。如果系统时间发生了改变,可以通过监听广播来获取。

  • Intent.ACTION_DATE_CHANGED (日期改变广播):系统日期自动改变不会发送该广播,用户手动更改日期,只有修改为之后日期时才会发生该广播,否则不发送。

  • Intent.ACTION_TIME_CHANGED (时间改变广播):系统时间自动改变不会发送该广播,用户手动更改日期或时间均发送该广播。

  • Intent.ACTION_TIME_TICK (时间改变广播):系统时间自动改变会发送该广播,可以通过该广播进行整点播报功能。

2、SystemClock.uptimeMillis():表示系统开机到当前的时间总数,单位是毫秒,但是,当系统进入深度睡眠(CPU休眠、屏幕休眠、设备等待外部输入)时间就会停止,但是不会受到时钟缩放、空闲或者其他节能机制的影响。

3、SystemClock.elapsedRealtime():表示系统开机到当前的时间总数,单位是毫秒。它包括了系统深度睡眠的时间。这个时钟是单调的,它保证一直计时,即使CPU处于省电模式,所以它是推荐使用的时间计时器。

4、SystemClock.elapsedRealtimeNanos():和SystemClock.elapsedRealtime()一样,不过返回的是纳秒。

猜你喜欢

转载自blog.csdn.net/kongqwesd12/article/details/128595434