Android Resources -- On disk or in ZIP?
<p>I'm confused about what low level operations are happening when I get an InputStream to an android resource (or asset). Is the input stream pointing to an actual file on disk that I could potentially access via UNIX-style read() and write() via JNI. Or is the InputStream some sort of special wrapper that points into the APK ZIP file, in which case ugly decompression operations would be going on each and every single time you do a read() call.</p>

<p>If the case is the latter, then how the heck do you get good IO performance on something like a video resource on Android? What if you want to write a video player that can seek back and forth through a video file, and just generally have good IO performance?</p>

<p>Must I really initially store the video file as an asset, and then do a silly manual copy of it to disk via openFileOutput() the first time my app runs?</p>
