0

Я хочу получить местоположение за 10 milisecond, но Мое местоположение меняет примерно за 30 секунд или 40 секунд. Где мой отказ? Кто-нибудь мне помогает? Я использую этот блок кода. Я тоже, но я получаю некоторые проблемы http://www.androidhive.info/2012/07/android-gps-location-manager-tutorial/Sensitivity Android Location Sensor

@Override 
protected void onStart() { 
    super.onStart(); 
    mGoogleApiClient.connect(); 
} 

@Override 
protected void onDestroy() { 
    super.onDestroy(); 
    mGoogleApiClient.disconnect(); 
} 

synchronized void buildGoogleApiClient() { 
    mGoogleApiClient = new GoogleApiClient.Builder(this) 
      .addConnectionCallbacks(this) 
      .addOnConnectionFailedListener(this) 
      .addApi(LocationServices.API) 
      .build(); 


} 

@Override 
public void onConnected(Bundle bundle) { 
    mLocationRequest = LocationRequest.create(); 
    mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY); 
    mLocationRequest.setInterval(1); // Update location every second 

    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { 

     return; 
    } 
    LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this); 


    mLastLocation = LocationServices.FusedLocationApi.getLastLocation(
      mGoogleApiClient); 
    if (mLastLocation != null) { 
     lat = String.valueOf(mLastLocation.getLatitude()); 
     lon = String.valueOf(mLastLocation.getLongitude()); 

    } 
} 

@Override 
public void onConnectionSuspended(int i) { 

} 

@Override 
public void onLocationChanged(Location location) { 
    mLastLocation = location; 
    Toast.makeText(MainActivity.this, location.getLatitude()+"+-+"+location.getLongitude(), Toast.LENGTH_SHORT).show(); 
    updateUI(); 
} 

@Override 
public void onConnectionFailed(ConnectionResult connectionResult) { 
    buildGoogleApiClient(); 
} 
void updateUI() { 
    Log.e("Updated",lat+"---"+lon); 
} 

Android версии 6.0.1

ответ

1

Вы можете сделать так:

mLocationRequest.setInterval(3000); 
mLocationRequest.setFastestInterval(1000); // For 1 Second = 1000 millis 
+0

это не работает:/раз я получаю местоположение на 40- 50 сек. –