Construct picker file path from picker db query

We neither store the provider authorities nor 'data' columns
explicitly in the picker db. This is to save on storage space from
redundant columns that can be constructed from other columns.

The 'data' column is an example that can be constructed with the
following pattern:
/storage/emulated/<user-id>/.transforms/synthetic/<authority>/media/<media-id>

For now, the 'data' columns is added as a hidden API on
CloudMediaProviderContract#MediaColumns, however, in future, it will
be exposed via the MediaStore API for 3P apps to query.

Test: atest PickerDbFacadeTest
Bug: 195009139
Change-Id: I0808e65e5f5f0897654620957951e80cf23e3ef1
4 files changed