如何在Android中获得高度

时间:2011-09-29 08:03:35

标签: android

我使用Location类来获取高度,但它总是返回0.

请告诉我如何获得高度?

Location.getAltitude();

4 个答案:

答案 0 :(得分:3)

最初我使用了location.getAltitude(),它总是重新调整0.0。然后我遇到https://groups.google.com/forum/#!topic/android-beginners/KNeLh905ip0它帮助我解决了我的问题。它适用于实际的真实设备。

private LocationProvider _locationProvider;
private LocationManager _locationManager;
   _locationManager = (LocationManager) mContext
            .getSystemService(LOCATION_SERVICE);

    _locationProvider = _locationManager
            .getProvider(LocationManager.GPS_PROVIDER);

     location = _locationManager.getLastKnownLocation 
                (LocationManager.GPS_PROVIDER); 

     _locationProvider.supportsAltitude();                          
            hasaltitude = location.hasAltitude();
            double altitude = location.getAltitude();
            System.out.println("HasAltitude" + hasaltitude+"-"+altitude);

“海拔”的值将以米为单位。

答案 1 :(得分:2)

海拔高度通常仅适用于GPS提供商。如果支持高度:

,您可以查看可用的位置提供商
locationProvider.hasAltitude();

答案 2 :(得分:0)

您需要获取用户位置: http://developer.android.com/guide/topics/location/obtaining-user-location.html

locationListener将为您提供一个Location对象,您可以在其上使用getAltitude()函数。

答案 3 :(得分:0)

使用所有不同的方法来获取位置,但是要求高精度的位置时,需要获得权限ACCESS_FINE_LOCATION