Fixes bug 1696, thanks Paul Geerts!
Also adds a bit of information about asset loading on Android.
This commit is contained in:
parent
a971c6b291
commit
09cbdb12c9
2 changed files with 15 additions and 0 deletions
|
@ -138,6 +138,18 @@ SDL_AndroidGetExternalStoragePath()
|
|||
|
||||
See SDL_system.h for more details on these functions.
|
||||
|
||||
The asset packaging system will, by default, compress certain file extensions.
|
||||
SDL includes two asset file access mechanisms, the preferred one is the so
|
||||
called "File Descriptor" method, which is faster and doesn't involve the Dalvik
|
||||
GC, but given this method does not work on compressed assets, there is also the
|
||||
"Input Stream" method, which is automatically used as a fall back by SDL. You
|
||||
may want to keep this fact in mind when building your APK, specially when large
|
||||
files are involved.
|
||||
For more information on which extensions get compressed by default and how to
|
||||
disable this behaviour, see for example:
|
||||
|
||||
http://ponystyle.com/blog/2010/03/26/dealing-with-asset-compression-in-android-apps/
|
||||
|
||||
================================================================================
|
||||
Pause / Resume behaviour
|
||||
================================================================================
|
||||
|
|
|
@ -613,6 +613,9 @@ static int Android_JNI_FileOpen(SDL_RWops* ctx)
|
|||
descriptor = mEnv->GetFieldID(fdCls, "descriptor", "I");
|
||||
ctx->hidden.androidio.fd = mEnv->GetIntField(fd, descriptor);
|
||||
|
||||
// Seek to the correct offset in the file.
|
||||
lseek(ctx->hidden.androidio.fd, (off_t)ctx->hidden.androidio.offset, SEEK_SET);
|
||||
|
||||
if (false) {
|
||||
fallback:
|
||||
__android_log_print(ANDROID_LOG_DEBUG, "SDL", "Falling back to legacy InputStream method for opening file");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue