这是我的应用:
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错误)。
可能是什么问题?我尝试了很多教程,但它仍然没有用。
答案 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)
这只是我的错 - 我忘记添加()。遗憾。