Skip to content
Commit c8e4924b authored by Jeff Sharkey's avatar Jeff Sharkey
Browse files

First pass at APIs for contributing new media.

MediaStore has long suffered from race conditions around creation
of new media.  For example, if developers write raw files before
inserting the MediaStore item, an in-progress media scan might pick
up the file before they could insert it.  Conversely, if developers
insert the item before writing the files, backup apps get confused
about the file not existing yet.

In addition, the new storage model in Q means that apps can't write
raw files directly to disk, so they need to insert the MediaStore
item first.

To solve this collection of issues, this CL introduces first-class
APIs for contribution of new "pending" media, which includes hiding
the pending media until explicitly published.  Apps can safely
resume pending sessions if they crash and restart, which is useful
when the media item is coming from a flaky network.  Apps can also
publish progress information about pending media, such as when a
panorama is taking several seconds to process.

Bug: 115377970
Test: atest MediaProviderTests
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: I6adee3c4ad1fb9db94906dd1293caaa1a09c6da0
parent 0fc74ab2
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment