https://developer.mozilla.org/en-US/docs/Web/API/Push_API
> web pages can't run in the background
Ok not the same at all, but you can use web workers for background threads:
https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers...
And the above have also been used to produce offline-first applications.
Unfortunately Apple has been bad at supporting these new APIs—ironic considering the last part of your comment. Google has been the best at it.
Let me give you an example. The official reddit app on my phone asks me maybe two or three times per week "Please enable push notifications". No. I don't want to do that. And I can't seem to get it to stop asking me. But on the website, in my browser, it's never asked me that. Because it can't. It's not allowed to. I'm not talking "is it technically possible from a pure theoretical standpoint", I mean in practice, is it physically possible for a web page on my iPhone to send push notifications and tear up my battery in the background? And I'm pretty sure the answer is "no". And that makes me very happy.
Though to be honest I do prefer apps for most things, but I want the web to at least give apps a challenge.
I don't have the Facebook app installed on my phone. Not for privacy reasons, not because the web page is better, but because the Facebook app was taking up over 300mb of my 16gb phone, and the only way I knew to get that space back was deleting the app. With a web page, I can get rid of all of its stored data and still be able to access the site.
Steve Jobs was right, even if he was a bit early in his predictions. Web pages are better than apps in a lot of situations. Facebook doesn't need to be an app. Hello doesn't need to be an app. They just need good responsive web pages.