How does getAltitude() of Android GPS Location Works

后端 未结 5 1766
后悔当初
后悔当初 2020-12-31 23:30

HI

I tried to implement a simple GPS tracker. Therefore is used

lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
lm.requestLocatio         


        
5条回答
  •  隐瞒了意图╮
    2021-01-01 00:01

    The altitude value you get is in meters from the gps (WGS84) reference ellipsoid and not from the geoid.

    From my own experience the GPS are really bad at altitude values.

    I read this on the GPS Status FAQ:

    GPS does not report the height above the mean sea level, rather the GPS system compares the height to the WGS84 reference ellipsoid which may be above or below the actual sea level. In different parts of the earth it can be off by more than 200 meters (depending on the mass distribution of Earth). For example the geoid's surface around Florida is above the mean sea level by a good 30-40 meters, which means that standing on the shore would show you -30m as altitude. This is normal, and not an error, and caused by the fact that the altitude is relative to an artificial reference surface and not to the sea level. If you are interested in this topic, I recommend to read Mean Sea Level, GPS, and the Geoid.

提交回复
热议问题