Potential Android version? #40
Replies: 3 comments 3 replies
-
|
Thanks for opening this discussion. Since I've received this request multiple times, I want to clarify the technical reasons why an Android version is currently impossible to implement with the same philosophy as the PC version. The issue is not the programming language or the development effort, but Android's Operating System restrictions (Scoped Storage) introduced in Android 11+. Here is the breakdown: The "Sandbox" Problem: On PC/Linux, SaveState works by automatically scanning and backing up folders. On modern Android, save files are typically stored in /Android/data/com.developer.game/files/. The OS blocks apps from reading other apps' data folders for privacy/security reasons. SaveState simply cannot see the save files of your games. The "User Experience" Killer (SAF): The only official workaround (Storage Access Framework) requires the user to manually grant permission via a system dialog for each specific folder. If you have 50 games, you would have to manually locate and authorize 50 different folders one by one. This destroys the entire purpose of SaveState, which is "one-click automation". Root Access: The only way to bypass this and make the app work like the PC version is to require a Rooted device. Since most users (and handhelds like the Retroid/Odin) do not run as Root by default or use standard user permissions, building an app that only works for 1% of users is not viable. Conclusion: Until Android provides a way for backup utilities to access global game data without forcing the user to manually select every single folder, a native Android version is effectively blocked by the OS design. |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
I'm aware that Android in itself is quite different from what Linux and Windows do with their states, but I was wondering if it's somewhat on the roadmap of things to look into?
I don't quite have any expectations but was generally curious.
Since this is gpl licensed, I might take a bit of a look to see if I can think of an easy way to do something here, but I've not been developing for over 5 years 🙈
Beta Was this translation helpful? Give feedback.
All reactions