Remove cover art's dependency on external storage

Recent changes to storage have caused unpredictable experiences with
cover art. Storage can take a long time to come up, or fail to come up
at all on multi-user builds. While the hope is these underlying problems
will be fixed, it's best for us now to remove this dependency all
together.

This change moves over the cover art storage mechanism from external
storage (where each image is a file) to internal hash map structures
(where each image is a Bitmap object). The provider has been updated
accordingly to be able to create ParcelFileDescriptor objects as
expected out of Bitmap objects.

Tag: #stability

Bug: 161396688
Test: atest BluetoothInstrumentationTests

Change-Id: I4f64375d4c0f9b083aadd741744379832da8bba2
4 files changed