- anything privacy sensitive
- anything processing intense (using optimized binaries)
- widgets
- camera and audio based features *can* work, but are more finicky (or outright broken on ios)
- local storage (exists in web app, short lifetimes on web site)
- performance/latency sensitive work
- (I'm less familiar, but probably local sensors, like gps and acceleration)
It's a shrinking area: You can get GPS, accelerometer, etc inputs from a web app nowadays. From my own experience the main areas that are tricky are related to automatically finding and connecting to devices: you can do bluetooth at least, but there's things an app can do with wifi and local connection protocols you can't easily do with a web app.
I sign in to video calls using my browser every day. Saying video/audio requires an app beggars belief.
Privacy is the opposite of what you get with an app. Privacy? Really?
Local storage is available to browsers. Office 365 literally functions in a browser with full access to local storage.
Anything processor intensive can be compiled to WASM. This isn't 2005 anymore.
So... widgets?
I can see an argument for games, where you want to pre-install a large amount of resources, and maybe have a better i/o story. Even that is a function of convenience over necessity.
I'd actually prefer that stuff stay in a browser and far away from my local storage on a device I take everywhere. Seems far riskier having it locally.
> anything processing intense
I can play Half-Life 2 in a browser window these days. I can do photo editing and CAD in the browser. I can have entire IDEs in the browser, compilers, non-linear video editors, and more. We're also kind of scoping this to phone apps, they're usually not very processing intense as you quickly hit heat and battery limits.
> camera and audio based features can work, but are more finicky (or outright broken on ios)
Sounds more like an overly restricted OS than anything else.
> local storage (exists in web app, short lifetimes on web site)
Once again, sounds like an overly restricted OS than a browser issue.
> (I'm less familiar, but probably local sensors, like gps and acceleration)
Nope... What you're talking about is not privacy sensitivity, but trust.
For you, you don't trust the provider of the software, so you mean being able to put a barrier around your life, and the delivered software... you think that by running in a browser, you're preventing that code from being connected to anything else... However, anything that happens in that code is directly connected to the provider, whom you don't trust.
I'm referring to the opposite... having something connected to your life, but having a barrier disconnecting it from the outside world... It involves trusting the provider of the software (maybe it's open source), but even if you don't, you can install an app, cut the network, use it locally, then delete it before restoring the network, and you have a guarantee that what you did with it was private... It's possible to build that into a web app, but most websites don't work offline, where most apps (though not all), do work offline... even if it requires an initial network session to establish authorization