Comment by justincormack
11 years ago
Actually location APIs do use core Google backend services (the wifi geolocation database). Even Keyboard does (spelling). In a way they are doing the opposite, building their services into everything, which is a natural googly thing to do to add features/improve them. At that point they close source them as they dont want other people using the services without signing up.
The way to compete is either to make standalone apps that dont require services (ie like the old unmaintained ones) or to build your own services, either open or closed.
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...