Class ShadowPausedSystemClock


  • @Implements(value=android.os.SystemClock.class,
                isInAndroidSdk=false,
                shadowPicker=Picker.class)
    public class ShadowPausedSystemClock
    extends ShadowSystemClock
    A shadow SystemClock used when LooperMode.Mode.PAUSED is active.

    In this variant, there is just one global system time controlled by this class. The current time is fixed in place, and manually advanced by calling SystemClock.setCurrentTimeMillis(long)

    SystemClock.uptimeMillis() and SystemClock.currentThreadTimeMillis() are identical.

    This class should not be referenced directly. Use ShadowSystemClock instead.

    • Constructor Detail

      • ShadowPausedSystemClock

        public ShadowPausedSystemClock()
    • Method Detail

      • sleep

        @Implementation
        protected static void sleep​(long millis)
        Advances the current time by given millis, without sleeping the current thread/
      • setCurrentTimeMillis

        @Implementation
        protected static boolean setCurrentTimeMillis​(long millis)
        Sets the current wall time.

        Currently does not perform any permission checks.

        Returns:
        false if specified time is less than current time.
      • uptimeMillis

        @Implementation
        protected static long uptimeMillis()
      • elapsedRealtime

        @Implementation
        protected static long elapsedRealtime()
      • elapsedRealtimeNanos

        @Implementation(minSdk=17)
        protected static long elapsedRealtimeNanos()
      • currentThreadTimeMillis

        @Implementation
        protected static long currentThreadTimeMillis()
      • currentThreadTimeMicro

        @HiddenApi
        @Implementation
        protected static long currentThreadTimeMicro()
      • currentTimeMicro

        @HiddenApi
        @Implementation
        protected static long currentTimeMicro()
      • currentNetworkTimeMillis

        @Implementation(minSdk=28)
        @HiddenApi
        protected static long currentNetworkTimeMillis()
      • reset

        @Resetter
        public static void reset()