RequestLocationUpdates диспетчера местоположения вызывается только один раз

Я вызываю метод и ожидаю обновления местоположения несколько раз:

locationManager.requestLocationUpdates("gps",0 ,0, loc_listener);

Мой loc_listener определяется как:

LocationListener loc_listener = new LocationListener() {
    private final String TAG = "xoxoxo.LocationListener";

    public void onLocationChanged(Location l) {
        Intent locationAlert = new Intent("xoxoxo.LOCATION_CHANGED")
                .putExtra("target_location", l);
        sendBroadcast(locationAlert);
        // locationManager.requestLocationUpdates("gps", 0 ,0, this);
    }

    public void onProviderEnabled(String p) {
        Log.i(TAG, "Provider enabled");
    }

    public void onProviderDisabled(String p) {
        Log.i(TAG, "Provider disabled");
    }

    public void onStatusChanged(String p, int status, Bundle extras) {
        Log.i(TAG, "Status changed");
    }
};

Определен как есть, я получит обновление только один раз, как для HTC Evo 2.2, так и для эмулятора Google API 2.2 +. Чтобы получить несколько обновлений, нужно раскомментировать строку, в которой регистрируются обновления для каждого обновления:

locationManager.requestLocationUpdates("gps", 0 ,0, this);

Вы, ребята, видели что-нибудь подобное?

8
задан Ry- 25 May 2013 в 15:10
поделиться