Wait for current location - GPS - Android Dev

后端 未结 1 1458

I have to wait to get the current location, just like when you are in Google maps and it requests for your location. If it can\'t get any location inform the error and do nothin

相关标签:
1条回答
  • 2021-01-25 03:15

    Read this from yesterday: GPS Android - get positioning only once

    But here is how you can get the current location:

    public class Example extends Activity implements LocationListener {
        LocationManager mLocationManager;
    
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
    
            mLocationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
            mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
    
            Location location = mLocationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
            if(location != null && location.getTime() > Calendar.getInstance().getTimeInMillis() - 2 * 60 * 1000) {
                // Do something with the recent location fix 
                //  if it is less than two minutes old,
                //  otherwise wait for the update below
            }
        }
    
        public void onLocationChanged(Location location) {
            if (location != null) {
                Log.v("Location Changed", location.getLatitude() + " and " + location.getLongitude());
                // You need to call this whenever you are done:
                // mLocationManager.removeUpdates(this);
            }
        }
    
        // Required functions    
        public void onProviderDisabled(String arg0) {}
        public void onProviderEnabled(String arg0) {}
        public void onStatusChanged(String arg0, int arg1, Bundle arg2) {}
    }
    
    0 讨论(0)
提交回复
热议问题