【问题标题】:Get language-dependent City and Country Name by Address or Lat/Long通过地址或纬度/经度获取与语言相关的城市和国家名称
【发布时间】:2016-08-22 18:15:48
【问题描述】:

我基本上想根据地址(邮政编码、国家名称、国家代码)或位置(纬度、经度)来检索城市和国家/地区的语言相关名称。

这是我的用例,以使其更清楚:

  • 德国的用户 A 将项目及其位置和地址(邮政编码、城市、国家名称、国家代码)存储在云数据库中。因为他住在德国,所以他的地址可能是德语,例如50667 Köln, Deutschland
  • 美国的用户 B 从用户 A 那里检索项目,但他无法读取地址,因为它是德国的。所以他需要英文地址,例如50667 Cologne, Germany
  • 法国的用户 C 也从用户 A 那里检索项目,但他需要法语地址,例如50667 Cologne, Allemagne

在 Android 上,我可以使用 Geocoding API 将地址翻译成另一种语言。有两个选项:getFromLocation(double latitude, double longitude, int maxResults)getFromLocationName(String locationName, int maxResults)。所以我可以使用带有纬度/经度的位置或使用错误语言的地址。基本上,我的问题是,什么是更好或更快的方法?

另一种选择是使用Google Geocoding Web API,但在这种情况下,我将被限制为每天最多查询。

我也愿意接受其他关于如何以另一种语言获取地址的想法。

【问题讨论】:

    标签: android google-maps google-api location google-geocoder


    【解决方案1】:

    如果您正在开发 Android 应用程序,请转到适用于 Android 的 Geocoding API。尽管 Web 服务的地理编码 API 很容易构建,但就像您说的那样,它有一个限制。

    对于标准 API,您将拥有:

    • 每天 2,500 个免费请求,按客户端和服务器端查询的总和计算。

    • 每秒 50 个请求,计算为客户端和服务器端查询的总和。

    如果您启用计费,您将需要支付 0.50 美元/1000 个额外请求,每天最多 100,000 个。

    另外,请注意这两种地理编码方法。

    客户端地理编码,在浏览器中执行,一般在 对用户操作的响应。 Google Maps JavaScript API 提供 为您提出请求的类。这种方法在 Google Maps JavaScript API documentation

    HTTP 服务器端地理编码,允许您的服务器直接查询 Google 的地理编码服务器。 Google 地图地理编码 API 是 提供此功能的 Web 服务。通常,您集成 此服务与在服务器端运行的其他代码。服务器端 地理编码在Google Maps Geocoding API documentation 中描述。

    【讨论】:

    • Android 上更好/更快的方法是什么:getFromLocation(double latitude, double longitude, int maxResults) orgetFromLocationName(String locationName, int maxResults)?
    • 我认为这两种方式中的任何一种都可以。但如果你考虑语言,我会去坐标(lat & lng),因为这个坐标永远不会改变。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-01
    • 1970-01-01
    • 2012-12-04
    • 2013-12-09
    • 1970-01-01
    相关资源
    最近更新 更多