我正在尝试使用地理定位服务和Windows Phone 8的地图服务找到当前位置附近的城镇。我一直在寻找许多网站,但我没有找到任何WP8,我不知道怎么做。
这可以通过WP8 SDK完成吗?我是否需要使用外部服务?
提前致谢
答案 0 :(得分:0)
是的,您可以使用Microsoft.Phone.Maps.Services API中的ReverseGeocodeQuery
课程获取当前地址(您的案例中的城镇)。首先,尝试获取当前坐标:
Geolocator geolocator = new Geolocator();
geolocator.DesiredAccuracyInMeters = 100;
Geoposition geoposition = await geolocator.GetGeopositionAsync(
maximumAge: TimeSpan.FromMinutes(5),
timeout: TimeSpan.FromSeconds(5));
然后,使用坐标查询地址:
ReverseGeocodeQuery query = new ReverseGeocodeQuery();
query.GeoCoordinate = new GeoCoordinate(geoposition.Coordinate.Latitude, geoposition.Coordinate.Longitude);
query.QueryCompleted += (s, ev) =>
{
if (ev.Error == null && ev.Result.Count > 0)
{
List<MapLocation> locations = ev.Result as List<MapLocation>;
// do what you want with the locations...
}
}
query.QueryAsync();
可以找到更详细的示例here。