2014-01-13 215 views
0

我正在开发一个Android应用程序以与另一个应用程序集成。 在这个应用程序中,我需要获取当前用户位置并将其发送给其他应用程序。 我得到latiude并使用下面的Web服务经度: https://maps.googleapis.com/maps/api/geocode/json?address=Rua+Vergueiro,+1883,+S%C3%A3o+Paulo,+Brazil&sensor=true将经度和纬度转换为位置描述的错误

的问题是,当其他应用程序收到纬度经度一并将其转换为地址说明,一个错误的地址显示给用户。

另一个应用程序正在使用here.com网络服务将纬度和经度转换为地址描述和使用googleapi的Im。

任何人都知道告诉我可能发生了什么?

谢谢。

回答

0

您使用一项服务(即Google)进行地理编码,并使用第二项服务(即HERE)进行反向地理编码,并且每项服务的底层数据都不相同。当它发生时,你正在寻找的位置是在一个路口,如图here

Sao Paulo

如果此位置运行reverse geocoding search,然后通过这里找到最接近位置大约是在角落Rua Jardim Ivone - 与HERE找到的第二接近的结果与Google相同 - Rua Vergueiro。正如你从图片中看到的那样,这是正确的 - 地图上最接近指定位置的房屋实际上在附近。

+0

你好Jason Fox,你知道告诉我如何解决这个问题吗? – user2952653

+0

您有几种选择 - 1)使用**相同**数据集(例如HERE到HERE)的地理编码和反向地理编码。 2)传递来自Google的'viewport'参数和部分地址,并在HERE上调用区域匹配。 http://geocoder.cit.api.here.com/6.2/geocode.json?searchtext=Rua%20Vergueiro&mapview=-23.5773,-46.6384;-23.58007,-46.6411&app_id=DemoAppId01082013GAL&app_code=AJKnXv84fjrb0KIHawS0Tg&gen=4或3)发送lat ,lng **和**地址到其他设备。选项3)将是最简单的。 –

+0

杰森福克斯,我使用选项3)。更清楚的是,我通过向另一个应用发送纬度和longitde来解决上述问题,另一个应用正在将我的纬度/经度转换为另一个位置描述。我怎样才能实现选项2)? – user2952653