title: How to pass binary data between two apps using Content Provider?
body: <p>I need to pass some binary data between two android apps using Content Provider (sharedUserId is not an option).</p>
  
  <p>I would prefer not to pass the data (a savegame stored as a file, small in size &lt; 20k) as a file (ie. overriding openFile()) since this would necessitate some complicated temp-file scheme to cope with concurrency with several content provider accesses and a running game.</p>
  
  <p>I would like to read the file into memory under a mutex lock and then pass the binary array in the simplest way possible.
  How do I do this?</p>
  
  <p>It seems creating a file in memory is not a possibility due to the return type of openFile().</p>
  
  <p>query() needs to return a Cursor. Using MatrixCursor is not possible since it applies toString() to all stored objects when reading it.</p>
  
  <p>What do I need to do? Implement a custom Cursor? This class has 30 abstract methods.
  Do I read the file, put it in a SQLite db and return the cursor?</p>
  
  <p>The complexity of this seemingly simple task is mindboggling.</p>