将GeoPoint转换为位置

hwr*_*kns 22 android google-maps geolocation

我知道这是一个非常无聊的问题 - 但是在Android平台上将GeoPointa 转换为a 的最佳方式是什么Location.

Meg*_*Rel 55

double latitude = geoPoint.getLatitudeE6() / 1E6;
double longitude = geoPoint.getLongitudeE6() / 1E6;

location.setLatitude(latitude);
location.setLongitude(longitude);
Run Code Online (Sandbox Code Playgroud)

  • 小心,代码中有一个讨厌的错误.至少我是这么认为的,如果我错了,请纠正我.它必须是float latitude = geoPoint.getLatitudeE6()/ 1000000F(F非常重要,否则他会将div放在由于div的值,因为它真的远离原点) (18认同)
  • 我当然希望这是讽刺. (11认同)
  • 这很糟糕,没有更容易的方法来做到这一点. (5认同)
  • 这是否正确,因为它不会设置高度? - @hwrdprkns:'1E6`的dividiing将为你节省一个以上的角色. - @stealthcopter:不,不.`Location`显然缺少两个浮点数的构造函数(`Location`甚至没有默认的构造函数 - 你需要填写一个无用的提供者).Actualy,我会让`Location`变得像'Date`或`String`一样不可变. (2认同)