【发布时间】:2013-12-04 11:27:53
【问题描述】:
我想知道 B4A 中是否有一种方法可以获取邮政地址的地理编码,然后为其分配一个唯一编号。如果可以,请告诉我获取地理编码和唯一编号所需的编码。
我认为它需要访问一个网站并从那里获取地理编码或以某种方式使用 Google Map API。
谢谢。
【问题讨论】:
标签: basic4android
我想知道 B4A 中是否有一种方法可以获取邮政地址的地理编码,然后为其分配一个唯一编号。如果可以,请告诉我获取地理编码和唯一编号所需的编码。
我认为它需要访问一个网站并从那里获取地理编码或以某种方式使用 Google Map API。
谢谢。
【问题讨论】:
标签: basic4android
获得坐标后,调用 Google Geocoding API 网络服务。
您需要传递参数 latlng(纬度/经度)和 sensor=true 才能接收结果。可以包含其他参数来过滤结果 (http://code.google.com/apis/maps/documentation/geocoding/#GeocodingRequests)
一个示例调用是http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=true
收到 JSON 响应后,您可以使用 B4A JSON 库来提取您需要的数据
【讨论】:
解决此问题的唯一方法是将 LatLon 数字作为字符串连接在一起。 您可以通过多种方式压缩非常长的结果..您可以将字符串转换回来 转换为数字,然后将数字转换为 HEX,这样您就可以得到更短的行。
【讨论】:
如果您在数据库表中对它们进行排序,我建议您使用一个额外的 AUTO INCREMENT 列并将其用作主键。当您插入每个邮政地址时,您将获得一个匹配的唯一 ID。
问题当然是唯一 id 本身没有意义。因此,除非您想按插入记录的顺序进行排序,否则我看不出按这个数字排序会有什么好处,但我不知道您对这些信息做了什么。
【讨论】: