How about the idea that not everything must live in the cloud?
I like apps that keep my data on my phone.
Or when you use your phone in areas with bad connections?
Say an outdoor app, you have on your phone with lots of data you specifically wanted for this area. In case you need it. But now you have to remember to use it regulary, or you have to walk up an mountain to get parts of your old state again.
There is a difference between temporary cache and intentionally saved data. Even from webapps.
But this just means a further push to develope a "real app" inside apples walled garden, for a proper functioning app.
(assumed this auto delete of all pwa cache is actually the case, and it would be allright with me, if there are exceptions for "installed PWA's")
I like apps that act like apps, and sites that act like sites. There's a reason we don't drive-by install apps on our phone just by clicking a link. But you do drive-by install site local storage on your phone by clicking a link. So you need a way to clean those up at the very least.
> But this just means a further push to develope a "real app" inside apples walled garden, for a proper functioning app.
You can also wrap a page as an app on the App Store if that's what you want. And store infinite data for infinite time. So everything is already possible.
So you don't have to develop an app in the walled garden, you just have to submit it to the walled garden, and not do something horrible using the native APIs, and you're done.
I want to target the web.
So anyone with a decent browser can use my app. PWA'S are not simple websites. They are more. A plattform independent application with web technology.
I want app developers to jump through more hoops than people making websites, and to need my express approval to run their app on my device. I absolutely do not want documents that “progressively” turn into apps. PWA is a bug not a feature.
Why would a document have access to your camera and microphone? I am 100% sure Apple would remove the camera and microphone API from iOS browsers if they could and the fanboys would defend it with "think about children and grandmas".
The Web has a portion that is more then documents, like music/video , games, simulations/animations. It makes sense from the POV of a greedy corporation to cripple say a web streaming app so you get a 30% cut of the subscriptions, or cripple video games 3d performance (with terrilble webgl) so you get 30% of those sweet lootboxes and gems.(BTW why is Apple not thinking at children with the lootboxes stuff?)
I’m very fine with this blurry line, and using web tech for all these things, even full apps if you want, as long as you don’t expect access to intrusive or persistent features when I browse to your website, but only when I decide to install/allow your “app”.
Whether Apple is obliged to provide a platform in which web tech used in apps matches native performance and features… I don’t see why they should be, though it’d be nice.
I totally agree forcing all apps via the App Store is bad btw. Alternative app stores and side loading should probably be allowed, but that doesn’t mean the answer is more ways for websites to intrude and behave badly in the browser.
It might be news to you, but webtechnologies have evolved a bit, from displaying static documents. Have you heard of wasm for example? Quite interesting, what you can do with that. And a bit more sophisticated, than scratching together some html markup.
But I very much agree, though, that I also don't want any website to have deeper access to my hardware, without explicit consent from myself.
"Until there’s a proper open standard for “web technology” apps that are opt-in and user initiated, and clearly separated (visually and technically) from web pages (which are documents) I feel like Apple are on my side here."
So yes, there is more work needed in that area to make that distinction more clear to the users.
But I don't see Apple is pushing in that direction. Rather the opposite. Pushing into their walled garden, they control. Otherwise they would be very free and able to polish their PWA permission dialogs, to protect their users, no?
What is hindering them?
Unfortunately that's often what it comes down to. Developers who don't care about the devices they target and their software stack.
Developers should be open to learn new tech, before they reject it. Sure, go the web app route, but don't do it because you look at iOS and the App Store and you "don't know how it works and don't want to have to know".
To me it's not surprising Google wants everything to be a browser with rich permissions that easy to track, search index, put ads on and monetize. This is why they want powerful PWA. This is why Chromebooks are basically... a browser.
Apple on the other hand has crafted a platform optimized for their philosophy of UX and design. And which is often incompatible with these PWA standards that have emerged, which are often honestly sloppy and indiscriminate in wasting a user's power, bandwidth and leeching their private data.
Apple and Google have diametrically opposed goals here.
- Apple wants a free and powerful web, but not a web so powerful it takes over your entire phone, because let's face it, the web is a giant balls of kludges, it's a miracle they work at all.
- Apple wants to save battery, to value user's privacy, and to allow the device to use its full potential through native APIs that are integrated with hardware functions etc. but not abused (which happens without at least cursory review process).
- Google doesn't care about wasting power, doesn't care about privacy, they run an ad business and a search engine. They want three things:
1. Everything everywhere should be the web.
2. The web should have access to everything on your device.
3. Google should own the web.
Well no, thanks.
I know that native apps are superior in performance over web apps, sure. And I certainly won't say every app has to become a pwa.
But for most simple apps, webtechnologies as a plattform are mature and performant enough.
And if you never would want to install one - thats your decision. But my decision is, that I don't want to specifically target apple technology. Just like with Microsoft, Samsung, LG, Google or whoever wants to copy apples walled garden.
I like plattform independent.
So you put yourself before your users.
But you don't like Apple puts themselves & their users before you.
Turns out users should side with Apple in this case...
Well then: how about you as a apple user only care about yourself and want every developer to cater for your special needs?
And don't care that most of the world has no apple device (and maybe don't want to, or can't afford).
And I as a developer want to target a neutral plattform. Because I care about all my potential users and not just apple and android ones.
It does not have to be the web. But this is currently the best we have.
Feel free to propose a better standard. And like I said: for full performance there are native apps.
For best portability there is the web.
I like choices.
So you put yourself before your users."
Sounds like an insult to me. Selfishness is regarded as a bad trait.
And I actually do care about other people beyond their money. Which is exactly the reason, why I did not decided to tend to the most lucrative market only: apples walled garden.
A more cynical take is that Apple want their cut of any revenue that goes through iOS and intentionally hamstrings PWAs at the expense of their users to achieve this. Either or neither could be true.
Everyone keeps talking about how they "intentionally hamstring PWAs". They kicked off HTML5, remember? They shipped the first real web browser on a phone, remember?
Now they chose to implement some Google-pioneered APIs selectively to preserve UX, performance and privacy and everyone is up in arms.
As a web developer I never felt Safari lacks something I really need. As an app developer, Swift is possibly the best dev experience I've ever had, next to C#.
All this is about letting people comfortable hacking everything in HTML to make "apps". Well I wish I could contribute to the Linux Kernel with my HTML apps, why not? Why is Linus hamstringing PWAs, ffs. /s
I'd argue that forcing someone to use your service by preventing others from offering the functionality and handicapping your own implementation is in fact a dirty thing. They get their cut when someone purchases an iPhone.
> Everyone keeps talking about how they "intentionally hamstring PWAs". They kicked off HTML5, remember? They shipped the first real web browser on a phone, remember?
So what? They didn't launch with the app store, and since it was introduced they appear more and more hostile to the changes they helped kick off. According to others in the thread they won't even allow webapps to send notifications, a fairly basic/fundamental feature of mobile phones. Elsewhere people go into further detail on how Safari's storage APIs are released buggy and broken.
> All this is about letting people comfortable hacking everything in HTML to make "apps". Well I wish I could contribute to the Linux Kernel with my HTML apps, why not? Why is Linus hamstringing PWAs, ffs. /s
This is a total mischaracterisation of what people are asking for which is simply to allow applications delivered through a web browser greater parity with native applications.
I work on a b2b web application and being able to store larger amounts of data on the client with user permission would be fantastic for both performance and user convenience.
The web is the truly only open platform that's still alive.
Except now you're paying $100/year and giving up 30% of any revenue for the privilege of allowing your users to store data on their phone?
I think local storage could use some improvements, especially with regard to giving users more control over what is stored there, but it provides much more freedom than participating in Apple's app store.
For example Apple's store doesn't want these web wrappers: https://developer.apple.com/app-store/review/guidelines/#min...
The paradox is that you have far less control with an app, and most come with even more analytics than a webpage. Apps in the Play and App stores don't make me feel any better than PWAs, quite the contrary. I've a LineageOS phone and use apps from F-droid to have a modicum of control and privacy, coupled with an ability to have it be usable without network.
Yes, and you should take the trouble to install those 'things'. Or host on a server you control.
The notion that a remote website has persistent storage rights on my device because I visited it a while back is ... odd.
It's reasonable to think there should be some user controllable "install" process to enable this.
But it's also reasonable that an application should have permanent local storage in some cases.
This, as a user and as a reasonable developer, seems exactly right. The “progressive” part happens when I want it to and initiated by me, so the developer can’t shove it down my throat or trick me into enabling their “app”.
So much of this argument is down to entitled web devs and companies that want to take advantage of the fact I’m reading their website to start installing software, sending notifications, reading from sensors etc. without permission.
That’s not an application it’s malware.
> I like apps that keep my data on my phone.
LocalStorage is simply not appropriate for this. The act of keeping persistent data should be transparent to the user, via "download" (save to disk) and "upload" (load from disk) workflows. This also allows the user to manage e.g. their own backups for this data, which they can't via localstorage.
That's horrible. If native apps would have to work like this to persist anything, instead of billions of users worldwide, they'd probably have 50-100x fewer users.
Users actively go to their App Store and choose to download an app. They don’t just get something installed, or not, in some obscure part of their device’s storage, without ever knowing about it.
Like I said in the originally statement: it would be allright for me, if apple and everyone else, regulary deletes all local storage of any pwa's that haven't been installed. And I have read nowhere here in this thread, that anyone is in favor of PWA's sneakily installing.
Yes, it should be very clear and visible, when you install something. But that is for the browser/OS makers to implement and not the issue here.
Perhaps I misread, but the parent seems horrified at the idea that users should get to know they are downloading something and that such knowledge would supposedly ruin native apps adoption.
I was merely pointing out that it already is, albeit partially, the case, and yet said apps are quite popular.
You can add any website to your home screen. Most behave like mere shortcuts.
Unless the web app chooses to tell you that doing so will make it persist on your device, there’s just no way for the average user to know ¯\_(ツ)_/¯
> If you have something worth preserving beyond 7 days of inactivity, put it on the damn server and reload it when you have to.
It could be also true about native apps, heck, why do we even have any storage option beyond 7 days except on servers? If what you said were true, why would they not have the same policy for native apps? It's just an excuse to cover up how they knee cap PWAs.
Their actions result in PWAs that can replace native apps even less often than today. PWAs had the potential to be free and platform independent, whereas Apple has much more control over their native apps. See your own example with the local storage: it doesn't make it completely impossible to make PWAs, it just makes it overall a worse option, for both devs and users, so it's easier to go ahead with the native app.
If they actually did that, it'd be crippling installed PWAs compared to native apps, since you couldn't persist anything without an account.
However, from what I remember, they don't actually clear the state of installed PWAs for the primary domain, since the 7 days only count down if you actually open the app on that day.
We're can I read up about this intention? I always thought local storage was just that, local storage.
Setting the same limitations as a website for a PWA defeats a major purpose for using them.
"Apple rolling out anti-PWA practices" refers to them clearing local state after 7 days of no use.
How is that going to stop anyone from having a PWA app? Web browsers have to prune their cache all the time, otherwise your entire phone would be just web cache.
Local storage is intended to be cache. Nothing more. If you have something worth preserving beyond 7 days of inactivity, put it on the damn server and reload it when you have to.
For the record, local storage is typically limited to 5MB. Users visit hundreds, often thousands of sites each month. They open links through social media to some random meme all the time. So we never clear those 5MB, what happens?
Month 1: 5GB of local storage...
Month 2: 10GB of local storage...
Month 3: 15GB of local storage...