Comment by makomk
11 years ago
I think the location APIs may also use system-level facilities that aren't open to normal applications, such as the ability to detect nearby access points even when WiFi is off and the device is in standby. So it's not clear that apps can implement it themselves without relying on Google. Also, the APIs for newer stuff like geofencing are Google-proprietary and don't support alternative providers, so mobile phone makers that don't want to rely on Google's services can't substitute a different backend without breaking existing apps.
It does not use system-level facilities that aren't open to normal applications. People love to hate on Google; if they ever embed features into the OS only they are allowed to use you will hear about it very quickly.
There is a class called WifiManager[1] which lets you ask the user to allow background scans. It also lets you see the results of the last scan.
It is unfortunate that the Geofencing APIs are not part of the android platform, but I suppose it's possible they use Google services.
1: http://developer.android.com/reference/android/net/wifi/Wifi...