It fits naturally into most apps, since from a user perspective, it simply means that apps are using the system file management interface. Apps requesting the legacy permissions and providing their own interface was usually a worse experience aside from privacy / security issues.
Conversation
An app can still provide their own file management interface though, by asking the user to select a directory. So, even the case of a generic file manager case still works fine. Obviously, many app developers don't want users to have control, and are completely opposed to this.
1
2
However, since the Scoped Storage model being mandatory has been delayed until the next major API level in Android R, apps can keep relying on the legacy storage model for an extra year and users will have a worse experience with those apps with the feature enabled universally.
1
1
2
An app using the legacy model will end up using their scoped external storage directory as if it's the external storage root. Users will often need to manually move files into the app's scoped directory to share files with it, and move files out they want saved after uninstall.
1
2
I'll need to explain it to GrapheneOS users, and they'll need to deal with it rather than apps adapting. There will be another fight next year with Android R. Maybe next time, journalists will push Google to ship this important privacy feature instead of spreading FUD about it.
2
This Tweet was deleted by the Tweet author. Learn more
The simple answer is no, they can't do that, because they can't do it today. Apps can't access files outside of their own app sandbox / directories without consent. That's the status quo already. The issue is that there's a coarse permission for a shared external storage volume.
1
1
Scoped Storage drops support for this coarse access control model and storage permission, similar to how it went away for external drives in Android 4.4. Users can still grant access to the entire storage volume since when the app requests access the user can choose any scope.
1
2
Apps have everything they need to avoid using the coarse, privacy-unfriendly storage permissions. The issue with the design is those coarse permissions existing at all. Apps demand them and aren't designed to work without them, and they store private data in that shared storage.
1
2
Scoped Storage removes those permissions and works around legacy apps designed around them by providing a scoped view of external storage, emulating the way it used to work. Removing it forces apps to use SAF (added in Android 4.4), where the user selects files/directories.
1
2
There are still some fairly coarse options available for things like media. An app like WhatsApp could decide to approach it by requesting Photos access and storing media in shared photo albums. It becomes much clear to users though, and it gives them granular control in general.
GrapheneOS's use of KVM is totally where my mind was going regarding compartmentalizing the apps. I can see scoped storage as a stopgap measure IF the android devs felt that upcoming device processors were not going to be powerful enough to run full-on KVM.
2
Then again this is kind of apples and oranges though since we're talking about app isolation as well as shared storage. If the KVM just provides a pass-through to shared storage without a storage management layer (think apparmor for storage), then we're back to square one.
2
Show replies

