2016-06-29 8 views

Antwort

1

Es gibt zwei verschiedene Dinge wie turning on gps und getting a gps fix. Sie müssen also die Erlaubnis von Benutzer oder Benutzer anfordern, um GPS zu aktivieren, wenn es ausgeschaltet ist, aber Sie müssen nicht fragen, wenn der GPS eingeschaltet ist und Sie einen Standort benötigen. Wenn Sie den GPS-Empfänger die ganze Zeit eingeschaltet lassen, wird die Batterie nicht so stark entladen. aber wenn ein Programm jedes Mal nach einem Ort fragt, wird es dies tun.

So in Ihrer App, was Sie is-

  • Halten Sie tun können, wandte sich der GPS auf jedes Mal. aber bitte nicht nach dem Standort fragen.
  • und denken Sie auch daran, den LocationListener oder googleApiClient zu entfernen, wenn er nicht benutzt wird, damit er die Gerätebatterie nicht entlädt.

Codebeispiel:

Um zu überprüfen, und schalten Sie GPS:

private void CheckEnableGPS(){ 
String provider = Settings.Secure.getString(getContentResolver(), 
    Settings.Secure.LOCATION_PROVIDERS_ALLOWED); 
    if(!provider.equals("")){ 
     //GPS Enabled 
    Toast.makeText(AndroidEnableGPS.this, "GPS Enabled: " + provider, 
     Toast.LENGTH_LONG).show(); 
    }else{ 
    Intent intent = new Intent(Settings.ACTION_SECURITY_SETTINGS); 
     startActivity(intent); 
    } 

} 

full code resource

für aktuellen Standort anfordern:

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this); 

@Override 
public void onLocationChanged(Location location) { 
    Log.i("log","Latitude:" + location.getLatitude() + ", Longitude:" +  location.getLongitude()); 
} 

full code resource

you can also use Google Fused API

Weitere Ressourcen:

GPS on but not in use = battery drain???

The truth about your battery

+0

So kann ich GPS behalten die ganze Zeit und den Ort aus, und wenn ich Standort brauchen kann ich es nur bekommen, ohne den Benutzer mit einem Dialogfeld zu klicken oder zu den Einstellungen? –

+0

ja du kannst. Du sagst dem Nutzer nur, dass deine App kein GPS verwenden wird, aber es muss die ganze Zeit eingeschaltet bleiben. und die gleiche Nachricht wird angezeigt, wenn der Benutzer versucht, die GPS auszuschalten. Halten Sie einen Listener, um das Ereignis gps change anzuhören. –

+0

Aber wie ist es möglich, den GPS eingeschaltet zu halten, ohne die Batterie zu entladen? –

Verwandte Themen