System time change for permission decisions

Handle system time changes for permission decisions. Since the time
change action doesn't give metadata about the previous time or how much
the time has changed, we need to keep track of the original time. A
workaround used by other apps, such as Wellbeing and UsageStats, is to
keep track of the system time and boot and then calculate the time
change delta.

Bug: 194240664
Test: atest RecentPermissionDecisionsTimeChangeReceiverTest
Test: atest RecentPermissionDecisionsStorageImplTest
Change-Id: I7d721621e6a86c80d7720798d50cb06b9eb34892
8 files changed