Calculate MediaColumns.HASH when demanded.

We'll come back in a future change to wire up automatic hashing in
onIdleMaintenance(), but we'll hold off on that until we've
implemented our optimized in-kernel hashing.

For now, generate the has when demanded via canonicalize(), and
clear any hash whenever the file is edited.  Tests to verify sanity.

Bug: 120782363
Test: atest android.provider.cts.MediaStoreTest
Change-Id: I287f7a204655b37e4efd519579b12084ee4fb8e3
1 file changed