El comando Geo Fix no pasa la altitud

En Android 2.2 Emulator, el comando "geo fix" parece no estar funcionando correctamente. El emulador responde "OK", y onLocationChanged() se llama correctamente en mi programa. Sin embargo, el objeto Location parece no estar completo: registra latitud y longitud muy bien, pero no contiene una lectura de altitud: hasAltitude() devuelve false .

¿Alguna idea por qué?

Comandos de emulador de ejemplo:

 geo fix -74 40.75 500 geo fix -77 39 400.0 

Fragmento de código:

 public void onLocationChanged(Location loc) { System.out.println("onLocationChanged Called"); if (loc.hasAltitude()) { double newalt = loc.getAltitude(); System.out.println("new altitude: " + newalt); gps[ALTITUDE] = newalt; } else { System.out.println("No altitude fix"); } gps[LONG] = loc.getLongitude(); System.out.println(gps[LONG]); gps[LAT] = loc.getLatitude(); System.out.println(gps[LAT]); } 

Salida de la muestra:

 onLocationChanged Called No altitude fix -74.012333333333333333 40.756666666666666667 onLocationChanged Called No altitude fix -77.012833333333333335 39.006499999999999996 

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.