Don’t forget the ability to send push notifications. I think that’s one of the main reasons — it turns your whole relationship with a product on its head: you lose control over when you’re engaging, instead they can literally push their services and ads on you.
But presumably developers have more control over app notification look & feel vs browser notifications?