如何获取某个国家/地区的位置点取决于 Android 手机配置

Posted

技术标签:

【中文标题】如何获取某个国家/地区的位置点取决于 Android 手机配置【英文标题】:How can I get a location point on a country depend on Android phone configuration 【发布时间】:2015-06-27 23:13:14 【问题描述】:

我正在使用谷歌地图开发一个安卓应用。在应用启动时,如果用户没有开启定位服务(无法获取用户当前位置,对吧?),

我希望我的地图根据手机配置缩放到当前用户所在的国家/地区。我该怎么做?

【问题讨论】:

【参考方案1】:

当然,您可以使用用户的系统语言来猜测他们的位置。但您知道,美国的每个人可能都使用相同的语言。

如果您不能使用 GPS,接下来最好的办法是通过某种 IP 地址定位器来确定用户的位置。甚至谷歌地图也为定位服务提供了自己的IP,但他们已经有一段时间没有更新了。更多信息请关注this post。

您应该考虑使用类似这样的某种 API http://www.telize.com/

GeoIP(以 JSON 格式获取 IP 地址位置):

不带任何参数调用 API 端点将返回访问者 IP 地址的位置信息:

示例(JSON):http://www.telize.com/geoip

"longitude":-97,"latitude":38,"asn":"AS15169","ip":"xxxx:x:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx",
"area_code":"0","continent_code":"NA","dma_code":"0","country_code":"US",
"isp":"Google Inc.","country":"United States","country_code3":"USA"

【讨论】:

以上是关于如何获取某个国家/地区的位置点取决于 Android 手机配置的主要内容,如果未能解决你的问题,请参考以下文章

如何使用地理位置而不是完整的国家和地区名称获取国家和地区代码

如何使用地理位置获取访问者的位置(即国家/地区)?

如何从 Sitecore 地理位置信息中获取用户所在的国家/地区?

获取某个位置的当前新闻

如何使用地名服务 api 而不是 html5 位置对象的东西获取国家/地区代码信息

将 Google Maps API v3 搜索结果限制在某个国家/地区,同时将它们偏向某个位置