Android GPS位置只给出第一个数字

时间:2012-12-02 16:15:17

标签: android dictionary gps location

这是我的应用:

public class HlavnaAktivita extends MapActivity implements LocationListener {
...
    public void onLocationChanged(Location location) {
            Log.w("myApp", String.valueOf(location.getLatitude()));
    }

当我给模拟器例如48.590007和17.824579时,它只写“17.0”。我尝试了http://www.androidcompetencycenter.com/?s=GPS本教程(来自StackOverflow),当我运行该应用程序时,它写出了很好的帖子,但在地图上只是圆形位置(17,48)(根据maps.google.com的位置很好,但是在地图上cca 100km错误)。

可能是什么问题?我尝试了很多教程,但它仍然没有用。

3 个答案:

答案 0 :(得分:0)

要获得地图上的确切位置,您需要2个参数:
点的纬度和经度。
GeoPoint在微度等级中接受纬度和经度,因此请尝试创建这样的点以获得更好的准确性:

double lati = location.getLatitude();
double longi = location.getLongitude();
GeoPoint geo_point= new GeoPoint((int)(lati * 1e6),(int)(longi * 1e6));

答案 1 :(得分:0)

它会将您的号码转换为int。为了避免它尝试类似的东西:

Log.w("myApp", String.valueOf((float) location.getLatitude()));

答案 2 :(得分:0)

这只是我的错 - 我忘记添加()。遗憾。