Revamp BinaryTransparencyService.
BinaryTransparencyService:
- change default binary measurement method from SHA256 digest to
APK content digest. This allows for more performant measurements.
- got rid of in-memory caches of digest results because:
a) larger scope: more binaries will be covered (in the magnitude
of hundreds);
b) the digest length using APK content digest might be longer than
256 bits: e.g. CHUNKED_SHA512 which is 512 bits;
c) the computation of these new digests are not as computationally
intensive that it causes noticible lags even when commands are
invoked repeatedly in adb shell.
- changed scheduled job to be scheduled periodically (once in a 24
hour period) instead of a one-off job.
- make use of method calls to BackgroundInstallControlService (BICS)
to obtain list of newly installed mobile bundled apps (MBAs).
BinaryTransparencyServiceTest:
- modified the return type for `getApexInfo` to receive a List instead
of Map.
Bug: 245944666
Test: atest BinaryTransparencyServiceTest.
Also, adb shell cmd jobscheduler run android <job-id>.
<job-id> can be found in debug printouts with TransparencyService
tag.
Change-Id: Ie305e71c514f4fb65b9e640301093ec83f01f718
4 files changed