This trade off is inherent. If you want a map service that lets you bring up a map of your current location without first downloading a map of the entire world, you have to send your location to the place that sends you the relevant portion of the map. But you get to choose -- you can use Google Maps, or you can install one of the OSM apps that actually downloads the whole map and can operate offline. You can install apps from Google Play or you can install them some other way.
You can carve Google out of Android, and then it's worse, in much the same way that iOS is worse without iCloud and the App Store. Except that if you want to use F-Droid or Amazon instead of Google, on Android you can and on iOS you can't.
And closed source drivers are lame, but I don't see Apple providing driver source either, and presumably the drivers are not sending your data to a third party in any case.
Most of what makes Android what it is are the closed sourced Google Play Services and you still require closed source binary drivers.
This is kind of a silly complaint when it's open source and anyone can modify it however they like. Especially with Apple pushing Apple ID and iCloud as if sending all your data to them is completely different.
iCloud is easily disabled. But I was shocked to find out when I looked at my dad’s Google account that Google recorded every time he opened any app on his phone. Apple doesn’t make money from my user data.