एंड्रॉइड 2.2 एमुलेटर पर नहीं है, "भौगोलिक फिक्स" कमांड ठीक से काम नहीं कर रहा है। एम्यूलेटर "ओके" का जवाब देता है, और onLocationChanged()
को मेरे प्रोग्राम में ठीक से बुलाया जाता है। हालांकि, Location
ऑब्जेक्ट पूर्ण नहीं होना प्रतीत होता है - यह अक्षांश और देशांतर को ठीक करता है, लेकिन इसमें ऊंचाई पढ़ने नहीं है: hasAltitude()
false
देता है।जियो फिक्स कमांड ऊंचाई
कोई विचार क्यों?
उदाहरण एमुलेटर कमांड:
geo fix -74 40.75 500
geo fix -77 39 400.0
कोड स्निपेट:
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]);
}
नमूना आउटपुट:
onLocationChanged Called
No altitude fix
-74.
40.756666666666666667
onLocationChanged Called
No altitude fix
-77.012833333333333335
39.006499999999999996
इसी प्रकार सवाल? http://stackoverflow.com/questions/11054379/why-does-location-getaltitude-always-return-zero-at-least-in-the-emulator – roarster