координаты геофиксации андроида отличаются от тех, которые на самом деле читаются - PullRequest
0 голосов
/ 08 ноября 2010

довольно ясно из названия, пока я пробовал разные координаты, но вот пример того, что происходит:

telnet localhost <port>
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Android Console: type 'help' for a list of commands
OK
geo fix 46.498981 11.350230
OK

пока в logcat я нашел эту пару:

46.491002 11.351833366666664

когда я даю эту координату, я читаю в logcat от моего слушателя, реализующего местоположение (и других для двойной проверки):

public class LocationService implements LocationListener {
private static final String TAG = "LocationService";
public LocationManager lmr = null;
private Navigation SystemService = null;

public LocationService(Navigation sservice) {
    this.SystemService = sservice;
}

public void startLocationService() {
    Log.d(TAG, "starting LocationService");
    this.lmr = (LocationManager) this.SystemService
            .getSystemService(Context.LOCATION_SERVICE);
    this.lmr.requestLocationUpdates(LocationManager.GPS_PROVIDER, 3000, 5,
            this);
}

public void stopLocationService() {
    this.lmr.removeUpdates(this);
}

/*
 * (non-Javadoc)
 * 
 * @see
 * android.location.LocationListener#onLocationChanged(android.location.
 * Location)
 */
@Override
public void onLocationChanged(Location location) {
    location = this.lmr.getLastKnownLocation(LocationManager.GPS_PROVIDER);
    try { 
     // this code is used to make a location used from the server I am communicating with out of a android.location
        eu.fbk.dycapo.models.Location loc = new eu.fbk.dycapo.models.Location();
        Log.d(TAG, "longitude : " + location.getLongitude());
        Log.d(TAG, "latitude : " + location.getLatitude());
        loc.setGeorss_point(String.valueOf((double) location.getLongitude())
                + " " + String.valueOf((double) location.getLatitude()));
        loc.setLeaves(Calendar.getInstance().getTime());
        loc.setPoint(eu.fbk.dycapo.models.Location.POSI);
     //send it to the server 
        LocationService.updatePosition(loc);

    } catch (NullPointerException e) {
        Log.e(TAG, e.getMessage());
        e.printStackTrace();
    }

}

/*
 * (non-Javadoc)
 * 
 * @see
 * android.location.LocationListener#onProviderDisabled(java.lang.String)
 */
@Override
public void onProviderDisabled(String provider) {
    // TODO Auto-generated method stub

}

/*
 * (non-Javadoc)
 * 
 * @see
 * android.location.LocationListener#onProviderEnabled(java.lang.String)
 */
@Override
public void onProviderEnabled(String provider) {
    // TODO Auto-generated method stub

}

/*
 * (non-Javadoc)
 * 
 * @see android.location.LocationListener#onStatusChanged(java.lang.String,
 * int, android.os.Bundle)
 */
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
    // TODO Auto-generated method stub

}

Я думаю, что где-то может быть что-то не так, но я не понимаю, где и почему, поскольку я следовал рекомендациям Android по реализации слушателей местоположения здесь .
спасибо

1 Ответ

1 голос
/ 08 ноября 2010

Боюсь, это известная ошибка в эмуляторе:

текст ссылки

У меня (и многих других) такая же проблема.*

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...