admin管理员组文章数量:1318055
android内存溢出 gps,android
我正在测试一个记录位置的Android应用程序(lat / long / alt)。 我在运行Android 2.2.1的三星GTS5830手机上运行该应用程序
我在这里和那里读到GPS高度通常不正确,因为地球不是完美的球形。 例如,在我的位置, 大地水准面的高度是52米。
我的理解是这个高度将从“纯”GPS高度中减去。 这对我的位置有意义:
- altitude from GPS phone: 535 m
- geoid altitude: 52 m
- altitude from phone's GPS minus geoid height: 482m
- correct atlitude: 478 m
482足够接近真实的东西,让我在徒步旅行时跟踪海拔
以上公式的GPS高度减去大地水准面的高度是否正确?
我是否正确地假设在返回GPS高度时android没有考虑大地水准面的高度?
如果以上情况属实,是否适用于所有版本的Android?
这是我用来获取GPS坐标的代码:
public class HelloAndroid extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
Log.d("main", "onCreate");
setupGps();
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
LocationListener locationListener;
LocationManager lm;
void setupGps() {
Log.d("gps", "Setting up GPS...");
locationListener = new MyLocationListener();
lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 20000, 5,
locationListener);
Log.d("gps",
"GPS supports altitude: "
+ lm.getProvider(LocationManager.GPS_PROVIDER)
.supportsAltitude());
Log.d("gps", "Finished setting up GPS.");
}
static class MyLocationListener implements LocationListener {
public void onLocationChanged(Location location) {
Log.d("gps", "long: " + location.getLongitude() + ", lat: "
+ location.getLatitude() + ", alt: "
+ location.getAltitude());
}
}
}
本文标签: android内存溢出 gpsAndroid
版权声明:本文标题:android内存溢出 gps,android 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1701203573a356241.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论