GPS Einstellungen handeln

  • Hallo zusammen,
    mit

    Code
    // testen ob GPS eingeschaltet, 
         		LocationManager service = (LocationManager) getSystemService(LOCATION_SERVICE);
         		boolean enabled = service
         		  .isProviderEnabled(LocationManager.GPS_PROVIDER);
            	
         	if (!enabled) {.....


    im Constructor
    prüfe ich ob das GPS-System aktiviert ist und verzweige nach einem Bestätigungsdialog zu den Einstellungen.
    Wird der Bestätigungsdialog NICHt bestätigt steige ich aus dem Programm aus.


    Bestätigt der User aber und schaltet dann GPS doch nicht ein, landet er wieder im Programm :(


    Kann ich das irgendwie verhindern?


    Eine Prüfung auf enabled am ende des Contructors bringt immer false :(


    was mache ich falsch?


    Danke für eure Info

  • Hi khh,


    ok nur um sicher zugehen ob ich dich auch richtig verstanden hab.
    GPS ist aus -> Dialog der den User auffordert das GPS an zu machen -> er sagt ja und wechselt in die Einstellung -> jetzt macht er aber nicht das GPS an sondern wechselt per back-Button zurück in die Anwendung.


    Soweit richtig?


    Ok falls das dein Problem, ist frag einfach in der onResume-Methode wieder den Provider ab, ob diese nun true ist. Falls nicht sag dem User er soll das scheiß Ding gefälligst an machen sonst geht dein App nicht.
    Sollte dir die onResume-Methode nichts sagen, nur soviel sie gehört zum Lifecycle einer Activity.
    Mehr Infos dazu findest du hier.


    Mfg Titus

  • ja so ist das gemeint


    ich danke dir !
    Funktioniert :)


    In dem Zusammenhang stellt sich mir die Frage, ob es möglich wäre GPS aus meiner App einzuschalten, ohne den "Umweg" über den Nutzerdialog?
    Falls das geht, ist das evtl. verpönt?

  • Hi khh,


    soweit ich weis geht das nur über den "Umweg".


    Um ehrlich zu sein, würde ich persönlich das auch nicht so toll finden wenn das App von sich aus das GPS-Abfragt ohne das ich erlaubt habe meine Position per GPS zu bestimmen.


    Als Tipp solltest du dir vielleicht überlegen, ob du die Positionsbestimmung per "Drahtlosnetzwerke" nicht auch zulässt.
    In Städten und dicht bevölkerten Gebieten kann man damit auch gute Ergebnisse erzielen und es ist meisten schneller und kostet weniger Batterie als die GPS-Abfrage.


    Mfg Titus

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!