Посмотрите документы для Location Provider
. Попробуйте этот код на нескольких устройствах в разных ситуациях, и я думаю, что он должен работать:
try {
LocationProvider lp = LocationProvider.getInstance(null);
if (lp == null) {
//Device doesn't currently have GPS enabled
} else {
//Device has GPS enabled
}
} catch (LocationException le) {
//Device's GPS is currently permanently disabled
}