If I use System.currentTimeMillis() at 00:00 and I get X value.
System.currentTimeMillis()
X
Then I set the clock back one hour, and after one hour i call System.
System.
On Android, you can always use SystemClock.elapsedRealtime().
SystemClock.elapsedRealtime()