3 ms·
They could have made the transition much more straightforward by just making the permissions system more granular (i.e. let the user pick a directory instead of
by iggldiggl 5y ago
They could have made the transition much more straightforward by just making the permissions system more granular (i.e. let the user pick a directory instead of simply asking storage access yes/no) and leaving the existing file APIs intact otherwise, just throw a permission error if you're accessing anything outside of the granted scope.
Instead they tried to force through a completely new API that isn't compatible with anything that came beforehand, isn't compatible with code that must have a classic file handle and cannot easily be changed (native libraries, parts of the Android API itself), introduces exciting new bugs and has worse performance.
Plus at the same time they seem hellbent on hiding the true, original location of files on the file system, so
a) if an app needs to ensure continuing access to a file, it needs to copy it to its own storage (Yay, dozens of copies of the same file)
b) this breaks any usages and file formats that don't consist of a single, atomic, fully standalone file (HTML files, playlists, subtitles, multi-part archives, ...).
- deleted 5y ago[deleted]
- izacus 5y agoThe "new API" has been available since Android 4.4 and was encouraged as default approach because it also worked with cloud storages, Chromebooks and other environment. Please don't write this misleading stuff, nothing about SAF is new. It's just that it was easier for developers to hardcode paths and crap all over the storage than to open the file dialog.
- iggldiggl 5y agoUsing the SAF is quite a bit more complex than simply prompting the user to pick a folder and then using that as your base path, though. Plus once apps developers were more seriously forced to use the SAF by recent Android versions, I've seen enough bug reports about actual shortcomings and performance problems of the SAF API on the Android bug tracker even for more recent Android versions. And Google's simultaneous insistence on only allowing inter-app file sharing via content://-URIs has definitively broken all multi-file file formats, with no official replacement available.