Not 100% sure, but I think the access to contacts is so that you can split ride fares with other people.
There's a standard intent to select a contact for purposes like that, and then the app only gets access to the information of that contact. Apps requesting access to contacts get all contacts.