I m writing an Android app, which uses location services. I want to detrmine the country region, in which the user is located. How can I achieve that ?
Google maps - android location services - determine country region from user current location
De openkb
Sommaire |
Questions
Answers
You can make a use of the Google Geocoder API
http://code.google.com/apis/maps/documentation/geocoding/ http://code.google.com/apis/maps/documentation/geocoding/
All you need to do is to make appropriate query, e.g in the request to the Google Geocoder providing the user s location in Latitude and Longitude format (in the url), and then parse the JSON/XML response. You can see that in the example that is provided there is JSON string that signifies the country:
{
"status": "OK",
"results": [ {
"types": [ "street_address" ],
"formatted_address": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA",
"address_components": [ {
"long_name": "1600",
"short_name": "1600",
"types": [ "street_number" ]
}, {
"long_name": "Amphitheatre Pkwy",
"short_name": "Amphitheatre Pkwy",
"types": [ "route" ]
}, {
"long_name": "Mountain View",
"short_name": "Mountain View",
"types": [ "locality", "political" ]
}, {
"long_name": "California",
"short_name": "CA",
"types": [ "administrative_area_level_1", "political" ]
}, {
"long_name": "United States", // <----- HERE IS THE COUNTRY NAME.
"short_name": "US",
"types": [ "country", "political" ]
}, {
"long_name": "94043",
"short_name": "94043",
"types": [ "postal_code" ]
} ],
"geometry": {
"location": {
"lat": 37.4219720,
"lng": -122.0841430
},
"location_type": "ROOFTOP",
"viewport": {
"southwest": {
"lat": 37.4188244,
"lng": -122.0872906
},
"northeast": {
"lat": 37.4251196,
"lng": -122.0809954
}
}
}
} ]
}
If I was unclear or short on the link you can read more. Or use Geocoder class from Google Maps API for android
Source
License : cc by-sa 3.0
http://stackoverflow.com/questions/7296277/android-location-services-determine-country-region-from-user-current-location