Fix RetroArch Cloud Sync conflicts on Android
Stop using both devices, turn Destructive Cloud Sync off, close running content, and read the debug log for the exact conflicting path. RetroArch's three-way merge keeps both the local and server versions unchanged when both changed, then excludes that file until you choose the copy to preserve.
Do this in order
- 01
Pause play on every synced device and make a separate copy of the local save and state directories before changing sync settings.
- 02
On every device, compare the four Sort Saves/Save States by Core Name or Content Directory settings and make them identical.
- 03
Set Destructive Cloud Sync to off, close content to return to the main menu, and run Sync Now from one device only.
- 04
Enable file logging at Debug level and locate the exact `[CloudSync] Conflicting change` path rather than choosing by filename alone.
- 05
Choose the authoritative copy: rename or remove the local file to fetch the server copy, or follow Libretro's manifest procedure to publish the preserved local copy.
- 06
Run one more single-device sync, reopen the authorized game, verify its in-game save and state separately, then repeat from the second device.
Decision and diagnostic table
| Status or symptom | Meaning | Safe next action |
|---|---|---|
| Finished with conflicts | Local and server both changed | Preserve both, inspect the debug path |
| Files exist in different folders | Directory sort rules differ | Align all four organization settings |
| Finished with failures | One or more operations failed | Check backend, credentials, network, and log |
| A deletion would propagate | Destructive behavior is enabled | Turn it off and use cloud_backups first |
A conflict is a three-way decision
RetroArch compares the current local file with both its local manifest and the server manifest. When local and server changed since the last common state, it does not silently overwrite either copy; the path is logged and temporarily skipped.
Resolve only the named file. Replacing an entire save directory can discard unrelated progress or hide a folder-layout mismatch.
Directory rules are part of file identity
Core-name and content-directory sorting must match across devices. Two copies with the same visible game name can live at different relative paths and never merge as intended.
Close content before a final sync. Automatic mode syncs at startup and when a core is unloaded, so force-closing the app while content runs is not the documented handoff.
Android uses WebDAV, not the Apple backends
Libretro lists WebDAV for all supported platforms, while iCloud and iCloud Drive are Apple-platform backends. On Android, record the server URL and account securely, but never paste credentials into a support post or page source.
Cloud Sync can copy saves, configurations, thumbnails, and—if explicitly enabled—system files. Keep BIOS/system sync off unless you have the right to copy that exact data to the chosen provider; never share WebDAV credentials, unauthorized ROMs, BIOS files, CHDs, artwork, or music.