base: Introduce app lock [1/4]

base: applock: refactor

* encapsulate config data sources and add a data class for per app config
* added support for migrating between different versions of data
* fixed notification content not being redacted.

services: applock: allow background authentication

base: merge hidden app feature with applock

services: AppLockConfig: fix a derp in hidePackage()

services: applock: fix data migration and change secure notification parameter name

* also fixed addPackage replacing data without checking if entry already exists

services: AppLockManagerService: use the og calling uid for target intent

* fixes launching app activites not exported

* (Stallix) - Adapt for A13 QPR1

* nift4: avoid changing public api

* base: Add system app whitelist for applock

* fwb: Rename app lock permission

* Dhina17: Adapt for A14

* SamarV-121: Update for A14 QRP2
              Handle null-safety errors
              Explicitly set RECEIVER_NOT_EXPORTED for registerReceiverAsUser

Change-Id: I36e20fac9cf3032010ae3a161ecb08638cadd002
37 files changed