You really can’t. I can use any taxi company I want to get from A to B. I can’t use any chat app I want to talk to my cousin Alice or my brother Bob. I have to choose one that they’re already on. That’s the network effect.
In transportation, all these taxi companies are using the same roads; the same network. I don’t have to make sure AcmeRideShare has permission at both the pickup and drop off points.
And I can change my mind tomorrow and go with ABCRideShare if I have a coupon. I can’t just arbitrarily decide to use ICQ tomorrow to talk to my Facebook friends.
Not every taxi company is willing to pick you up in a reasonable time frame and take you wherever you want to go. In many cities, on many occasions, I have had significant trouble hailing or calling for a cab. Further, I've often had them (illegally) refuse to take me to my desired destination.
Uber and Lyft are wonderful, because the drivers show up and don't complain about where you're going.
It's not the same. If you only ever needed to chat with one person at a time, and it didn't matter who that person was, and there was nothing stopping you from downloading multiple apps just to see who's out there to chat with and picking the person who charges the least... well then WhatApp would be pretty easy to switch away from.
One person downloads the app to chat. The other downloads to reply. And here we are. Still using WhatsApp:)