0

私はこのコードを持っています:

if (item.getItemId() == R.id.tempMap) {
        locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
        Location location = null;
        if(locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)||locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)){
        Criteria criteria = new Criteria();
        criteria.setAccuracy(Criteria.ACCURACY_FINE);
        provider = locationManager.getBestProvider(criteria, true);
        location = locationManager.getLastKnownLocation(provider);
        locationManager.requestLocationUpdates(provider, 20000, 1, this);
        if (location != null) {
            Log.e("PROVIDER SCELTO", provider);
            onLocationChanged(location);
            Log.e("LATITUDE", String.valueOf(latitude));
            Log.e("LONGITUDE", String.valueOf(longitude));

と:

public void onLocationChanged(Location location) {
    // TODO Auto-generated method stub
    latitude = location.getLatitude();
    longitude = location.getLongitude();
}

しかし、それが返す最後のGPSポイントは、「Googleマップナビゲーター」を使用した後の最後のポイントです. そのため、gm navigator を使用しないと、緯度と経度が更新されません。

どうして???

ありがとうございました

4

1 に答える 1