The permissions for accessing shared storage (/storage/emulated/0
) are getting really really complicated and changing all the time. As I understand it when targeting Android 11 there is no way to opt out of scoped storage, which means you literally can't ever do fopen("/storage/emulated/0/foo.dat");
. Apparently the preferred way to open a file will be with the ACTION_OPEN_DOCUMENT
but this just returns a content://
URI, which I can't read using the NDK. I'm also unsure if you get to use that URI forever.
How are NDK libraries meant to access files in /storage/emulated/0
on Android 11?