Skip to content

Android: Add RetroAchievements host override receiver#2371

Merged
flyinghead merged 1 commit into
flyinghead:devfrom
misantronic:retroachievements-host-override
Jun 11, 2026
Merged

Android: Add RetroAchievements host override receiver#2371
flyinghead merged 1 commit into
flyinghead:devfrom
misantronic:retroachievements-host-override

Conversation

@misantronic

Copy link
Copy Markdown

RAOfflineProxy is an Android app that proxies RetroAchievements traffic through 127.0.0.1, enabling offline softcore achievement play through local caching and later sync.

On Android, controlling the RetroAchievements host override through a broadcast receiver is a cleaner integration point than relying on external tools to patch runtime config files directly.

This makes the host override controllable by the app at runtime instead of requiring external file edits, which is more brittle and harder to integrate cleanly on Android.

Summary

  • add an Android broadcast receiver for setting and clearing the RetroAchievements host override
  • persist the override in emu.cfg across app restarts
  • apply the override through the native rc_client_set_host() API both on client creation and immediately at runtime via JNI

Testing

  • built and installed debug APK on a physical device (API 33, Adreno 740)
  • verified SET_RETROACHIEVEMENTS_HOST_OVERRIDE routes RetroAchievements traffic through the local proxy
  • verified CLEAR_RETROACHIEVEMENTS_HOST_OVERRIDE removes the stored override and restores direct traffic
  • verified offline play works through RAOfflineProxy while the override is active

Related

  • mirrors the same Android broadcast-driven host override support already merged for ARMSX2 and PPSSPP
  • follows the same goal as the existing PRs for melonDS and Dolphin

@flyinghead

Copy link
Copy Markdown
Owner

Please target the dev branch instead of master.
Also hardcore mode should probably be disabled when the host override is active, like in other emulators.

@misantronic misantronic force-pushed the retroachievements-host-override branch 2 times, most recently from 0f5ee68 to 8603280 Compare June 10, 2026 17:34
@misantronic misantronic changed the base branch from master to dev June 10, 2026 17:35
@misantronic misantronic force-pushed the retroachievements-host-override branch from 8603280 to ab53223 Compare June 10, 2026 17:36
@misantronic

Copy link
Copy Markdown
Author

Please target the dev branch instead of master. Also hardcore mode should probably be disabled when the host override is active, like in other emulators.

Thanks, done. 🙏

  • Target dev
  • Disable hardcore when host override ist active

@misantronic

Copy link
Copy Markdown
Author

@flyinghead Not sure about this failing CI Job, I think this is unrelated to my changes? 🤔

@flyinghead

Copy link
Copy Markdown
Owner

Yes, unrelated. This is due to a change in github job runners.

@flyinghead flyinghead merged commit a9c5ef8 into flyinghead:dev Jun 11, 2026
20 of 22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants