> and it receives access to something very much like a file, but the app isn't even permitted to know whether that's a file on the local device or an on-demand download/upload by another app
... and which is also completely unsuitable for content that implicitly depends on multiple files, e.g. locally stored HTML files: For the case where an app is launched because you wanted to view a particular file, you'll only get access to that "something very much like a file" for that exact file only, but you (respectively your browser) cannot access any other associated files that might be required (images, style sheets, scripts and whatnot) that way, and neither would navigation among separate files stored locally work.