Post

To install a PWA on iOS, you have to: - Navigate to the site - Open the menu - Click "share" (wtf!?) - Click the SECOND "more" ellipsis icon (not the first!) - Click "add to home screen" - Click the "Add" button This is, to me, unacceptably byzantine. Just deliberately hostile on Apple's part.

10 reposts87 likes

I am pretty confident we implemented push notifications for a PWA, a few months ago, here in Italy. We used a third party service for easier integration but it shouldn‘t matter, I believe. So the ”not available in the EU” caveat seems inaccurate.

WTF are you on about? The 1st step is a given. You can’t count that. Then it’s Page Menu > Share > Add to Home Screen (there’s not even 1 ellipsis, let alone 2) And the last step is ALSO a given! That’s three steps! (Four if you count swiping up to see “Add to Home Screen”) 1/2

Adding a PWA using Chrome is also three steps, and also uses the Share menu: Share Menu (in location bar) > View More > Add to Home Screen. Really not sure what more you want. A dedicated button on all pages? 2/2

in Chrome it's one step, because when the browser recognizes a valid manifest.json it promotes it with a little 'install' button at the right of the address bar.

Apple was adamant on ending support for PWAs in the EU about two years ago, but had to backtrack after the backlash and after EU threatened to have them investigated

Thank you. Sounds like Apple’s concern was that DMA terms required them to implement the much more permissive Android-style PWA, allowing deep HW access, arbitrary data storage, etc. They reversed course when the EC assured them it would be sufficient to limit PWAs the more secure WebKit engine.

It's been like that for over 10 years. In the PWA I was writing recently, we deliberately descoped any iOS support for the installation process since there's literally nothing we can do programmatically to help users install the app - it has to be manual, the way you described.

I'd love to have a full blow by blow of why it was done that way I honestly think it would be useful as a design guidline, like an anti-pattern to avoid in the process or my favorite: past: click->desired data Now: click->'helpful' landing page-> 'helpful' landing page -> desired data