It's kinda sad that the website doesn't prominently display which features have "universal" support across iOS and Android. The whole point of PWAs is to provide cross platforms apps so if a feature isn't available on all/most platforms, I don't think it's fair to say that it's really usable at all in your PWA.
The whole point of PWAs is to provide cross platforms apps so if a feature isn't available on all/most platforms, I don't think it's fair to say that it's really usable at all in your PWA.
You should be delivering the best possible experience for the user based on what their device can do, not the lowest common denominator of some arbitrary set of features. Progressive enhancement, API detection, and polyfilling are all common strategies that can be used to mitigate almost all device differences.
Keyword being "almost", and that in some cases if the platform doesn't support your feature, you're shit outta luck.
By far the thing that prevented PWAs from bigger uptake earlier was Apple dragging their feet on push notifications support on iOS. There was simply no workaround or polyfill for that at all, and the biggest use case for PWAs was supporting push. Apple finally released web push notification support last year on iOS but the app needs to have already been installed on the home screen (I think that part is good), and last I checked the "install to home screen" on iOS Safari was still a horrible user experience (the actions is hidden under the "share" menu, which makes no sense to me).
Is there any evidence that this moved the PWA needle at all, he said hopefully? I would've predicted no effect on PWA adoption.
For better or worse, it's how iOS users are trained to "do something" with the current web page. Keeping in mind that "PWA" is jargon that average users won't be familiar with, what would be easier than (1) tap Share, tap (2) Add to Home Screen?
Android allows the site to prompt the user to add it to their home screen, which it can do at a time when it makes sense. e.g. the user orders something, then the "add to home screen" pop-up appears and the user can accept with one tap, which they're likely to want to do because they anticipate wanting to check their order status.
Sadly this is caught up in the usual conflict of interests. As someone building a PWA I would love a quick and easy method to pop up an install dialogue for the user. Unfortunately as a user of Safari on iOS the last thing I want is for every single website I interact with to be popping install dialogues, and you just know that's going to be as prolific as the current bombardment of requests to subscribe to mailing lists, and on desktop enable push notifications the moment a web page is opened.
The "natural" UI place for that kind of begging would not be a pop-up, but the head end of the URL bar, where the domain certificate validity is shown. Usually that's also the place where the UI for revoking permissions that are already granted is launched. Assuming the best I suspect that this is already the future plan of browser makers: on both browsers I usr (android chrome and FF on the desktop) hair the begging pop-up point there already, perhaps this is not only done as a hint to the place where the permission can be revoked, but also as training wheels for a less annoying future where the pop-up is replaced with some simple notification state in that place?
As an Android user I don't feel bombarded by install requests, so I don't really know what you're talking about.
As an iOS user, I would certainly not want websites prompting me for things like that. But I probably also would not want a webshop as an app. That’s a good use for a plain website.
This doesn't work for me. (Android 11, Motorola phone.)
If I add a PWA or shortcut to my Home Screen, it will quite quickly disappear silently. Especially if I use Chrome to do it. The Support community is at a loss to explain this and they're starting to send me nonsensical instructions, showing they are desperate to get rid of my embarrassing question.
Companies that already have two copies of their app front-end team will certainly not jump at the first hunch that they might perhaps be substituted by a third line. It's a slow process. But five years from the watershed moment of Apple ending their web push boycott (announced 22, executed 23), I expect a noticeable trend. For now, it's probably just orgs that would start from zero with an app questioning the need for a pair of native apps who might pick PWA over faux-native (electron/tauri wrapping a web UI). And perhaps some who already did faux-native, keep their app-store presence but also offer a third variant of the same running unwrapped in regular browsers.
In what universe does "adding to home screen" have anything to do with sharing? It's completely nonsensical.
As others have noted, it would be trivially simple for browser makers to explicitly have something in the address bar or a pop-up that allows users to install.
For me, it was developers trying to push Android design language via PWAs. In others, it was what should have been a website being packaged as a PWA, which is just clunky. That combination made PWAs feel cheap compared to native apps or sites.
What website uses the Android design language? Every website wants to look different, to stand out. A design language can only exist if it's enforced by an app store.
What does a website packaged as a PWA mean? A PWA is a website.
PWAs are cheap compared to native apps. That's the whole point.
So the exact opposite of PWAs.
Technically that's what Progressive means in Progressive Web Apps. That the developer enables features for customers based on the browser API support on their device, inadvertently ending up with software that works differently on every person's device. You might not like it, but that's what peak Chromebook performance looks like.
PWAs are the next step in mobile Web, for most forms over data apps, it isn't really needed.
When I came back to Web/Distributed Systems after my stint dealing with Windows desktop, all the applications I have been involved only had Web frontends, including for mobile devices, not Web views, the actual browser.
They managed perfectly fine.
For subscription app may be, but all ads revenue websites will reject it.
I reject them
I cannot tolerate apps with ads
"ad-driven websites" and PWAs aren't targeting the same user. Even if they were, there's nothing stopping a PWA developer from adding a Google Ads script to the markup.
There are many types of applications out there besides ads.
Wouldn't that be the opposite? Subscriptions through the App stores, ads as PWA?
Apple laughs at your universal support.
Apple spent a huge amount of time and money getting Safari in line with PWA standards in the past few years. Your comment would make sense 3 years ago when it was completely unclear whether Apple will flinch.
It just happened to coincide with the moment the EU started looking quite seriously at what they were doing.
They have tried to hobble the web as a platform for fairly obvious reasons for as long as they could.
They don’t deserve any credit for whatever progress they made, it was done unwillingly at gunpoint.
"You mean to tell me there's this thing called the world wide web, where anyone can just host anything and all people need to access it is a few words typed into a program that runs on anything? They don't need to buy our proprietary iDevices?! They don't even need to pay us a yearly ransom to put their stuff onto our store?! But what if it's something we don't approve of? This is preposterous and I want it dead."
- Tim Apple, probably
I wonder what kind of preachy "we are so brave" excuse it will be this time now that they're finally forced to allow app sideloading by the EU and Japan.
Doesn't https://caniuse.com already fill this need? This article is just evangelism, if you want technical sources the community has had you covered for a long time.
Sure you can look things up but it would be nice to look at this evangelism site and tell at a glance that Bluetooth isn’t supported everywhere the way playing a sound is.
To clarify what you're actually trying to say: Access to the low level Bluetooth device API is not as pervasively supported as audio output is. Quite clearly you can play audio to a bluetooth device in a PWA everywhere.
And that kind of ambiguity is why you need to be using a rigorous source like caniuse and not just looking at summary statements for this kind of information.
Right. Audio over BT just counts as audio, the BT permission means something mote like connect to and use arbitrary BT devices.
I didn’t actually mean to compare BT vs BT audio in my original post, I just picked an example every browser will let you do. I hadn’t considered the crossover until I saw your reply.
Knowing what will come and be available is also a valid use case. If you want to know about support every feature has links to MDN and caniuse, just check there. The web isn't as simple as comparing iOS/Android. For example Firefox on desktop isn't Firefox on Android and Firefox on iOS is just Safari. The web is a complex ecosystem.
Depends. What if your PWA is an in-house app for operators in your company? They all have an issued device with MDM, one or a few skus, all apple (or all Google).
I think most in-house devs would rather not deal with the app store or the vagaries of getting the MDM side loading pathway working
If you open the site on a target device, it'll tell you whether the feature works on that browser or not.