Hey, thanks rory!
Unfortunately, the demos only apply to API <=29.
That’s the way I successfully dealt with files until I tried to publish the app 
Today, if you want to upload an app to the play store, you need to build for API 30.
Doing so disables those “oldschool” techniques and requires usage of SAF (Storage Access Framework).
However, I tried the “audio playback” and “images” demos, but (as expected by reading the code) none is able to access files:
The native file browser opens up, showing and filtering correctly, but when you tap a file, nothing opens.
The jucy file opener only shows directories but no files.
This is the same behaviour I have with my app.
It’s not that I can’t access files at all, but I need to go for API30 
I suppose we need some other magic here…
But:
Browsing through the JNI code, I found those delicate lines:
#define JNI_CLASS_MEMBERS(METHOD, STATICMETHOD, FIELD, STATICFIELD, CALLBACK) \
METHOD (constructor, "<init>", "(Ljava/lang/String;)V") \
METHOD (close, "close", "()V") \
METHOD (read, "read", "([B)I")
DECLARE_JNI_CLASS (JavaFileInputStream, "java/io/FileInputStream")
#undef JNI_CLASS_MEMBERS
#define JNI_CLASS_MEMBERS(METHOD, STATICMETHOD, FIELD, STATICFIELD, CALLBACK) \
METHOD (constructor, "<init>", "(Ljava/lang/String;)V") \
METHOD (close, "close", "()V") \
METHOD (write, "write", "([BII)V")
DECLARE_JNI_CLASS (JavaFileOutputStream, "java/io/FileOutputStream")
#undef JNI_CLASS_MEMBERS
Are there any examples or tutorials addressing this JNI stuff?
Thank you so mutch! 