It's not just funding. Apple changed webapps to delete indexedDB periodically even if they are inatalled on the home screen.
There's no way to have a great experience if you can't store data permanently.
If so this is something we really need to follow up.
Ask yourself the same question about Native Apps. Why should any Native App be allowed to store data permanently. The answer to that question is the same for Web Apps.
> As mentioned, the seven-day cap on script-writable storage is gated on “after seven days of Safari use without user interaction on the site.” That is the case in Safari. Web applications added to the home screen are not part of Safari and thus have their own counter of days of use. Their days of use will match actual use of the web application which resets the timer. We do not expect the first-party in such a web application to have its website data deleted.
> If your web application does experience website data deletion, please let us know since we would consider it a serious bug. It is not the intention of Intelligent Tracking Prevention to delete website data for first parties in web applications.
So, while adding it to the home screen still involves this mechanism, the "first-party"--which I understand to be the website which was actually added to the home screen, differentiating it from all of the third-party websites that it might link you to--is presumably going to be used every time you use that icon on the home screen and since that icon also has its own usage counter it won't ever be counting up when you aren't using it, so you are "good" (unless the user manages to use your home screen added app for seven days without ever ending up back at the "first-party" site somehow, which seems like an oddity and maybe one they mitigated directly).
Web Apps can be every bit as capable as Native Apps except with security and privacy built in. For consumers, businesses and competition, Native Apps need to be relegated to to apps that require cutting edge use cases
2. You (as a user) lack autonomy or control over them.
3. While built on "free and open technology", they are not by design.
4. Is totally subject to the whems, taxes, and control of the gatekeeper (the app developer)
Web applications have demonstratively made the experience worse for users without them knowing it. And web app developers know this intrinsically and refuse to acknowledge it.
It also impacts the UX of the app with more complex caching or having to load things over the network as you use it.
2. Not any more than native apps.
3. I guess.. Not sure that matters though..
4. Not any more than native apps. But what mtomweb refers to is obviously the app stores which act as gate keepers, which web apps are not subject to.
>Web applications have demonstratively made the experience worse for users without them knowing it. And web app developers know this intrinsically and refuse to acknowledge it.
What? Not in my opinion, they haven't.
2. You have far more control over Web Apps than Native Apps. The permissions are more granular + via your user agent (browser) you can change privacy and security settings and install extensions to change the behaviour further.
This is not available on native.
3. We're not advocating for "free" apps (App Developers need to make a living too), We're advocating for free and open web tech.
4. Having hundreds of thousands of competing App Developers is not an issue, having 2/3 gatekeepers controlling and extracting rents is.
5. Web Applications only have to be written once, which will result in BETTER products. There's a reason Adobe, Microsoft and many other companies are all investing in Web Apps.
Unless the app is open source why would it matter to me if it is build on free and open technology?
I would say per definition a webapp is less free than a native app as its under the control of the server operator and not running locally. I know iOS have somewhat webified apps to let them control if people can run them but the old idea of the native app would be entirely under the control of the user, even if its closed source.
I also dont think a web app can do privacy as well as a native app. A native app you can firewalled off from network access while with a web app you are at the mercy of the developer and server operator.
This makes users feel like they're never logged into a website when they need it, unless they're using it almost daily.
That high-friction experience pushes users towards apps, which of course are always ready to go.
EDIT: source: https://webkit.org/blog/10218/full-third-party-cookie-blocki...
> Back in February 2019, we announced that ITP would cap the expiry of client-side cookies to seven days
> ...
> Now ITP has aligned the remaining script-writable storage forms with the existing client-side cookie restriction, deleting all of a website’s script-writable storage after seven days of Safari use without user interaction on the site. These are the script-writable storage forms affected (excluding some legacy website data types):
> Indexed DB
> LocalStorage
> Media keys
> SessionStorage
> Service Worker registrations and cache
EDIT 2: That page indicates web apps on the home screen get some variation for this behavior, but the difference isn't clear to me.
No, its so they can better get money out of the end users. A user cant keep using their 5 year old copy of XYZ, they have to pay every month or they will be cut off from the application.
That’s a gross misrepresentation of how Safari ITP works.
How to balance that desire with advertisers' desire to track users is of course a difficult question.
It's not good for storing media, but for other things it can be used as a backup and communication tool for web apps.
I wish that were true. But since many apps these days are just slapdash shims over web portals, they time out login sessions and forget things anyway.
They'll make you submit your PWA for app store review, sign your asset and JS bundles so all other's won't load, make you support "Web IAP", and go through review again every time you want to update your bundle.
Hitching your "I want to be be free of Apple's platform control" to "I want PWA's" is a recipe for disappointment.
Source? I had thought the usage counter ignored days when you didn't open the webapp.
I am pretty sure most apps use AT LEAST iCloud to store data
But it would be nice if the user could make this setting on a per-webapp basis.
Modern web apps can cache all the files they need to function. They can work offline. So when iOS deletes a web app's data, it doesn't just delete some content and maybe a few settings. It's basically like it deletes the entire app and you have to reinstall it (by opening the web app and re-download all assets that make it work). Sure, the icon is still on your home screen, but the entire app behind it is gone.
It'll also delete things like your login status/tokens/etc, so you have to log in again, maybe the web app has settings that it doesn't want to sync across devices, etc.
I assume that when Web Push hits iOS, notifications will only work as long as you open the web app often enough.
So much of the software industry has been consolidated into the hands of a few monopolies. Web, with all of its horrible problems, is pretty much the only democratic platform we have left, and even it is constantly being eaten away by these monopolies.
It's your device. If you want a website to be able to store data permanently on it, it is your choice. Not apple's. Not google's. Fucking yours.
However I note that contrary the parent-poster's implication that Apple is using tricks like these to steer users towards native apps, the same linked article talks about how pinned web-apps (i.e. PWAs) _don't_ have their local content deleted after inactivity, which contradicts the claim that Apple is using this in particular to sabotage PWAs:
> That is the case in Safari. Web applications added to the home screen are not part of Safari and thus have their own counter of days of use. Their days of use will match actual use of the web application which resets the timer. We do not expect the first-party in such a web application to have its website data deleted. > > If your web application does experience website data deletion, please let us know since we would consider it a serious bug. It is not the intention of Intelligent Tracking Prevention to delete website data for first parties in web applications.
But I do agree that Apple very likely has internal orders from the top-down to de-prioritise PWAs because Apple definitely wants to see users (and devs) go native (or least via the App Store) instead of being PWAs - but I don't believe it goes as far as _actively_ sabotaging PWAs (i.e. just merely "passively-sabotaging", I guess?).