
ui_3k1
Gesperrt
- 197
Hallo,
habe meine neue App auf ein paar Geräten getestet und mir ist dabei aufgefallen, dass es je nach Android Version doch sehr große (um nicht zusagen "gravierende") Unterschiede gibt.
Das Szenario:
Da die App genauste Positionsdaten benötigt, möchte ich zu Beginn prüfen, wie die GPS-Einstellung gesetzt ist - "Energiesparen" oder "hohe Genauigkeit" lauten die Einträge in den Standort-Einstellungen.
Die Abfrage verläuft nun wie folgt.
Auf den meisten Geräten funktioniert es genau wie es soll.
Die Frage wird gestellt, wenn "Energiesparen" bei den Standort-Einst. hinterlegt ist. Wenn hingegen die Einstellung "hohe Genauigkeit" hinterlegt ist, kommt die Frage nicht und die App startet "normal" und zieht sich auch direkt die Positionsdaten. Top.
Und nun zu dem Punkt der mich nun seit ein paar Stündchen zum Kochen bringt. Auf einem Nexus 5 und auf einem HTC (Google Play Edition) bekomme ich immer den Dialog angezeigt. Die Geräte erhalten jedenfalls über o.g. Code keine wahren Aussagen.
Seltsam: Google Maps hingegen bemerkt wenn ich die Navigation im Energiesparmodus starten möchte und fragt dann "berechtigt"..
Wie bekommt man das Problem in den Griff? In der Doku habe ich nichts gefunden und in meiner Not bin ich bereits die "Bedienungsanleitung" durchgegangen... Das habe ich gefunden:
... aber wirklich "aussagekräftig" ist das meiner Meinung nach auch nicht.
Vielleicht hat jemand ja ähnliche Probleme gehabt oder weiß wo dazu etwas in der Doku steht.
Danke vorab.
Martin
PS: bin mir darüber bewusst, dass ich noch gestern bzw. vorgestern zu einer ähnlichen Fragestellung hier im Forum jemandem helfen wollte. Da habe ich das Problem in seiner Tragweite vielleicht selbst nicht ganz geblickt.
Strange... Ein Neustart hat das Problem behoben oO jetzt frage ich mich aber trotzdem noch, ob es nicht irgendein Bug im System ist, immerhin trat beschriebenes Phänomen ja bei zwei Geräten auf. Beim Nexus konnte ich es noch nicht testen - bin mir aber sicher, dass es am Neustart lag, denn direkt danach hat alles funktioniert. oO
habe meine neue App auf ein paar Geräten getestet und mir ist dabei aufgefallen, dass es je nach Android Version doch sehr große (um nicht zusagen "gravierende") Unterschiede gibt.
Das Szenario:
Da die App genauste Positionsdaten benötigt, möchte ich zu Beginn prüfen, wie die GPS-Einstellung gesetzt ist - "Energiesparen" oder "hohe Genauigkeit" lauten die Einträge in den Standort-Einstellungen.
Die Abfrage verläuft nun wie folgt.
Code:
final LocationManager manager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (!manager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
buildAlertMessageNoGps();
}
Die Frage wird gestellt, wenn "Energiesparen" bei den Standort-Einst. hinterlegt ist. Wenn hingegen die Einstellung "hohe Genauigkeit" hinterlegt ist, kommt die Frage nicht und die App startet "normal" und zieht sich auch direkt die Positionsdaten. Top.
Und nun zu dem Punkt der mich nun seit ein paar Stündchen zum Kochen bringt. Auf einem Nexus 5 und auf einem HTC (Google Play Edition) bekomme ich immer den Dialog angezeigt. Die Geräte erhalten jedenfalls über o.g. Code keine wahren Aussagen.
Seltsam: Google Maps hingegen bemerkt wenn ich die Navigation im Energiesparmodus starten möchte und fragt dann "berechtigt"..
Wie bekommt man das Problem in den Griff? In der Doku habe ich nichts gefunden und in meiner Not bin ich bereits die "Bedienungsanleitung" durchgegangen... Das habe ich gefunden:

... aber wirklich "aussagekräftig" ist das meiner Meinung nach auch nicht.
Vielleicht hat jemand ja ähnliche Probleme gehabt oder weiß wo dazu etwas in der Doku steht.

Danke vorab.
Martin
PS: bin mir darüber bewusst, dass ich noch gestern bzw. vorgestern zu einer ähnlichen Fragestellung hier im Forum jemandem helfen wollte. Da habe ich das Problem in seiner Tragweite vielleicht selbst nicht ganz geblickt.
Strange... Ein Neustart hat das Problem behoben oO jetzt frage ich mich aber trotzdem noch, ob es nicht irgendein Bug im System ist, immerhin trat beschriebenes Phänomen ja bei zwei Geräten auf. Beim Nexus konnte ich es noch nicht testen - bin mir aber sicher, dass es am Neustart lag, denn direkt danach hat alles funktioniert. oO
Zuletzt bearbeitet: