EDIT: I was wrong, this is one of the permissions they require on Android, however, not on iOS as Apple doesn't make it available to third-party developers.
Luckily, I am running on root and can disable that access, but it's certainly possible.
It's a major privacy violation, with Google directly encouraging it for no good reason.
(Getting device ID should be a very rare, high-security permission; instead each app should get a unique app+deviceID. And seeing who is calling is likewise a rare thing that should be highly suspect. Or Google could add controls or do on-demand like MS and Apple do...)
I can't think of a valid reason why an app should require such permissions besides information gathering.. there are API for making you app talk, or discover other apps
When Facebook introduced their phone (well, just their android launcher) a couple of years ago, I thought this kind of feature would be a major selling point.
While I would never use it, I know many many people who would be thrilled for something like this.
I wonder if the WhatsApp acquisition price just got validated.
I think more realistically computers are Still mysterious magic boxes to them to some extent