Skip to content

Compatibility

Devices confirmed working by either the developer or user reports.

DeviceVersionStatusNotes
AYN ThorAndroid 13✅ WorkingDev tested
AYN Odin 2 PortalAndroid 13✅ WorkingDev tested
Anbernic Arc DAndroid 11✅ WorkingUser tested
Ayaneo Pocket Air MiniAndroid 11✅ WorkingDev tested
MagicX One 35Android 12✅ WorkingUser tested
Retroid Pocket ClassicAndroid 14✅ WorkingUser tested
Mangmi Air X
Anbernic RG477M
Android 14⚠️ Only with a workaroundUser tested; reports indicate Android 14 blocks granting access to scoped storage. See issue #4.

Submit your device

Tested RAOfflineProxy on a device not listed here? Fill out the Device Compatibility Form - submissions are reviewed manually and may be added to the list above.

Which emulators are supported on Android?

RAOfflineProxy currently supports RetroArch, Dolphin, PPSSPP, and ARMSX2 on Android.

That support depends on emulator-specific behavior:

  • The emulator must expose a compatible RetroAchievements server override or equivalent config path
  • RAOfflineProxy must know how to patch and restore that emulator's config files
  • It must know where that emulator stores RetroAchievements credentials on Android
  • Its request handling must match the way that emulator's RetroAchievements client talks to the API

Other emulators are not just a different frontend. They may use different config files, different credential storage, different request flows, or no compatible custom server override at all.

That means support for another emulator would require emulator-specific implementation, testing, and maintenance rather than a simple toggle.

For that reason, emulators beyond RetroArch, Dolphin, PPSSPP, and ARMSX2 are currently not supported, even if they also expose RetroAchievements features.

Experimental Linux work in this repository is also centered around RetroArch.

Why not implement this natively?

In an ideal world, offline RetroAchievements support would be built directly into the emulator.

In practice, that is much harder than it sounds.

On Android, a native implementation would require separate emulator-specific builds with this functionality added directly. On Linux-based handhelds, it would be even more difficult, because support there often depends on custom firmware or full operating system images. In many cases, that would mean rebuilding and maintaining large parts of the software stack just to add offline RetroAchievements support.

The other complication is that RetroAchievements depends on live server communication for things like game data, unlock state, session handling, and award submission.

RAOfflineProxy takes a different approach: it sits between the emulator and RetroAchievements, caches what is needed locally, and syncs queued softcore awards later when you are back online.

That means the extra app is a tradeoff. But it also makes this possible today across more devices, without requiring custom emulator builds or system-level changes.