Android 11 changed some things about how apps can access storage, which breaks the way emulators and frontends used to access roms and talk to each other.
This doesn't affect every emulator, it depends on how the emulators work and when they were last updated, but some emulators no longer support launching games from frontends using the old method.
For these emulators, the frontend has to send a special SAF (Storage Access Framework) URI instead of the traditional file URI to specify which game to launch.
Note that it's also possible for this issue to appear in earlier versions of Android for a recently updated emulator, but it's more likely to happen in Android 11. It depends on the emulator.
As of ARC Browser version 1.24.5, templates for these emulators will give you a choice between the non-SAF and SAF version.
Generally speaking, if you're on Android 11 or later you should use the SAF version of the template if one is available. If you're on an earlier version of Android it depends on the emulator. You might need to do some trial and error.
Also please keep in mind that for the emulators that use the Storage Access Framework, you need to grant access to the same rom directory inside the emulator that you're using in ARC Browser. For example, if you're using /games/SNES as a rom directory in ARC Browser, you need to grant access to /games/SNES specifically inside the emulator. It's not enough to grant access to /games or /games/SNES/subdirectory.
This information was valid up until ARC Browser version 1.24.4, but as of version 1.24.5 there is no need to install any helper apps (assuming you're using the new templates)
To get around this storage access issue and launch games from ARC Browser in the latest versions of these emulators on Android 11 and later you need a small helper app.
- Download SAF Proxy 1.2i (2022-01-15) here and install it on your device.
- Open SAF Proxy and grant it access to your rom directory/directories.
- Note that some emulators may require you to grant access here to the exact same directory you've granted access to inside the emulator.
- For example, if you're using the directory "/games/PS2" inside the emulator, it may not be enough to grant access to "/games" here. In that case (if you run into any issues) you should grant access to "/games/PS2" in SAF Proxy as well.
- The opposite is true as well. If you've granted access to "/games" inside the emulator, it may not be enough to grant access to "/games/PS2" here, even though all your games are in the "/games/PS2" directory.
- If you don't do this correctly, the game may not load at all, or it may load but saves might not work. Or you might get some other error.
- This depends entirely on the emulator.
- In ARC Browser, use the template for the emulator that has "(via SAF Proxy)" in the name.
- Make sure you're using the latest version of the emulator.