ui_3k1
Gesperrt
- 197
Hallo,
folgendes Problem:
Letzte Woche habe ich mir eine Art "Rahmen" für meine App zusammengeschustert. Da meine Anwendung auf Geo-Positionen zurückgreifen soll, habe ich die Doku befolgt und den LocationListener in meine Main gepackt.
Gerade bin ich dabei die Anwendung etwas umzustrukturieren, sprich der LocationListener soll nun mittels Service gesteuert werden. Das funktioniert auch soweit.
Nun habe ich eben nicht schlecht gestaunt als ich in meiner Main prüfen wollte, ob der Nutzer GPS eingeschaltet hat. So prüfe ich die Einstellungen:
Der Rückgabewert war true, obwohl "Toggle" und Einstellungsmenüpunkt GPS inaktiv war. (Echtes Gerät: LG G3)
Lösen ließ sich das Problem wie in im folgenden Beitrag beschrieben:
android - LocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER) is not reliable, why? - Stack Overflow
Kann ich auf die Prüfung der GPS-Einstellung in meiner Main verzichten, wenn ich diese im Service abfrage?
Danke vorab
Martin
Btw: ist es normal, wie der Themenersteller (s.Link) seine Stati prüft? Ich sehe das gerade zum ersten Mal und es wirkt auf mich etwas "experimentell"... Wundere deswegen nur über die 5 UPs, die er dafür bekommen hat...
folgendes Problem:
Letzte Woche habe ich mir eine Art "Rahmen" für meine App zusammengeschustert. Da meine Anwendung auf Geo-Positionen zurückgreifen soll, habe ich die Doku befolgt und den LocationListener in meine Main gepackt.
Gerade bin ich dabei die Anwendung etwas umzustrukturieren, sprich der LocationListener soll nun mittels Service gesteuert werden. Das funktioniert auch soweit.
Nun habe ich eben nicht schlecht gestaunt als ich in meiner Main prüfen wollte, ob der Nutzer GPS eingeschaltet hat. So prüfe ich die Einstellungen:
Code:
private boolean GPSEnabled() {
LocationManager locManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
return locManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
}
Lösen ließ sich das Problem wie in im folgenden Beitrag beschrieben:
android - LocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER) is not reliable, why? - Stack Overflow
Ist zwar schön, dass der Fehler jetzt vorerst weg, aber ein Mitglied hat mein aktuelles "Problem" in den Kommentaren sehr zutreffend formuliert:There are 2 conditions must be met that LocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER) returns true.
Second one is obvious. But first one is not. They told how to simulate first one is negative. You can confirm the issue with steps shown below and running my test app (please see my question for link to download).
- Some internal state is ready for network location.
- Network location is enabled on setting screen.
- Open settings of you phone.
- Tap Applications.
- Tap All tab.
- Find "Network Location", tap it.
- Tap "Disable".
- Reboot your phone.
- Run test app.
Welche Möglichkeiten habe ich?Will your customer do all these steps ? And have you tested your app on other phones ? Samsung 2.3.6 and 4.0 ? In my opinion you need programmatic way to trigger the update. Think about it.
Kann ich auf die Prüfung der GPS-Einstellung in meiner Main verzichten, wenn ich diese im Service abfrage?
Danke vorab
Martin
Btw: ist es normal, wie der Themenersteller (s.Link) seine Stati prüft? Ich sehe das gerade zum ersten Mal und es wirkt auf mich etwas "experimentell"... Wundere deswegen nur über die 5 UPs, die er dafür bekommen hat...
Zuletzt bearbeitet: