Das GPS-Symbol scheint seinen Status entsprechend den empfangenen Sendeabsichten zu ändern. Sie können den Status selbst mit den folgenden Codebeispielen ändern:
Benachrichtigen Sie, dass das GPS aktiviert wurde:
Intent intent = new Intent("android.location.GPS_ENABLED_CHANGE");
intent.putExtra("enabled", true);
sendBroadcast(intent);
Benachrichtigen Sie, dass das GPS Korrekturen empfängt:
Intent intent = new Intent("android.location.GPS_FIX_CHANGE");
intent.putExtra("enabled", true);
sendBroadcast(intent);
Benachrichtigen Sie, dass das GPS keine Korrekturen mehr empfängt:
Intent intent = new Intent("android.location.GPS_FIX_CHANGE");
intent.putExtra("enabled", false);
sendBroadcast(intent);
Benachrichtigen Sie, dass das GPS deaktiviert wurde:
Intent intent = new Intent("android.location.GPS_ENABLED_CHANGE");
intent.putExtra("enabled", false);
sendBroadcast(intent);
Beispielcode zum Registrieren des Empfängers in der Absicht:
// MyReceiver must extend BroadcastReceiver
MyReceiver receiver = new MyReceiver();
IntentFilter filter = new IntentFilter("android.location.GPS_ENABLED_CHANGE");
filter.addAction("android.location.GPS_FIX_CHANGE");
registerReceiver(receiver, filter);
Durch den Empfang dieser Broadcast-Absichten können Sie die Änderungen des GPS-Status feststellen. Sie werden jedoch nur benachrichtigt, wenn sich der Status ändert. Daher ist es nicht möglich, den aktuellen Zustand unter Verwendung dieser Absichten zu bestimmen.