如何在Android应用程序中使用地理编码器找到特定位置的大陆
i am developing android application using Geocoder services,
I have an application where I try to get address of a location based on
the latitude,longitude coordinates its working fine.
my problem is how to get continent of particular address.
示例:双纬度 = 17;双 lon=78.49;
列表地址 = new Geocoder(Shout.this,Locale.getDefault()).getFromLocation(lat, lon, 1);
我使用此代码输出是印度,海得拉巴 这个地址与如何找到大陆有关,请帮助我一些有价值的解决方案。
我正在使用地理编码器动态获取国家/地区名称,他们有机会获得大陆名称和国家/地区名称。很难静态维护我需要动态 任何免费服务都可以找到基于大陆的服务
提前致谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
由于我们的大洲数量有限,因此最好使用静态数据列表。
我们可以使用下面的
json_str
(在此处找到),其中包含CountryCode & Continent
从
Geocoder()
我们可以得到CountryCode
如下:As we have limited number of Continents, it's good to use static list of data.
We can use below
json_str
(found here) which haveCountryCode & Continent
And From
Geocoder()
we can getCountryCode
like below:我认为 Google 的 API 没有提供此类信息。我能想到的唯一解决方案是使用某种静态数据结构将国家/地区名称映射到大陆名称(您可能必须以某种方式找到自己,例如通过抓取 此网页...)。然后,您可以文本搜索 GeoCoder 为您提供的字符串,并返回与最接近匹配的国家/地区名称对应的大陆(这将是字符串映射中的键)。 (您还必须处理美国地址的特殊情况,令人烦恼的是,它仅以州代码结尾)
I don't think there is such information given by Google's API. The only solution I can think of is to have some kind of static data structure mapping country names to continent names (which you would presumably have to find yourself somehow, for instance by scraping this web page... ). Then you could text search the string that GeoCoder gives you and return the continent corresponding to the closest matching country name (which would be the key in your String mapping). (You would also have to treat the special case of US addresses which, annoyingly, end just with the state code)