4 ms·
Not necessarily. File explorers (and other apps) can still ask the user for access to specific files and folders (including the storage "root "), via the Storag
by gnomewascool 8y ago
Not necessarily. File explorers (and other apps) can still ask the user for access to specific files and folders (including the storage "root "), via the Storage Access Framework (SAF), which gives the app a sort-of-like-a-file-but-not-quite handle on the files and folders within the given tree.
That handle is probably good-enough for basic file management operations, like copying, moving or renaming files, but (from what I've read) if you want to, say, jump to the middle of a file, such as to read a specific file contained in the archive or seek to a specific position in a music/video file, it becomes very inefficient. If you want to read/write from a database (and need that database to be easily shared between different apps), then you also have a problem. If you use an app like Termux, which exposes the file system to standard unix utilities, and want to directly manage all your files with them, you're pretty much out of options.
- geofft 8y agoWhy doesn't the file proxy class have a seek or read-with-offset RPC operation instead of just handing you a stream of bytes? This isn't particularly novel for remote-ish file storage (SCSI supports this, NFS supports this, etc.) Re Termux, I actively don't want any app on my phone to have direct access to the rest of the files on my phone. The fact that desktop terminal apps (cmd.exe, Terminal.app, xterm, etc.) require this access is the root cause of a bunch of security difficulties in desktop OSes that are impossible to solve in a satisfying way. I want a little workspace (potentially multiple workspaces) for stuff where a terminal is the right way to work, but I don't want the ability for any app to cd into my Signal storage directory or my email client config directory and edit files there. As a result, I use iOS. If Android will get me the same security design plus the ability to call fork() so Termux works, I'd consider switching - it sounds like that's what they're doing.
- gnomewascool 8y ago> I want a little workspace (potentially multiple workspaces) for stuff where a terminal is the right way to work, If you don't give Termux the "storage" permission, then this is exactly how it works now. > Signal storage directory Signal stores its data in its private app directory, which is not exposed to either any other apps, even if you give them the "storage" permission, or to the user via MTP. The only exception is the optional back-up, which is stored (encrypted!) in the public app directory (accessible to MTP and apps having the "storage" permission), so that you can copy it to your next phone. (AFAIK Signal on iOS doesn't give you this option...). > email client config directory K-9 mail also stores its data in its private app directory. OTOH files that are not super-private, like books, audiobooks, music, maps or flashcards can be stored where they're easily accessible, manageable and processable by multiple applications (but even then, only applications that I grant the requisite permission).
- ubercow13 8y agoI like editing my email client config with vim, in a terminal.
- geofft 8y agoI don't like other apps with vulnerabilities editing my email client config. If I want an app to edit my email client config, I'm happy to click something in my email client to explicitly authorize a specific vim in a specific terminal to do that.