我在使用maplocationfinder时遇到了一个奇怪的问题。
我正在使用maplocationfinder根据字符串地址检索经度和纬度:
string address = ""; // Any address here
var locFinderResult = await MapLocationFinder.FindLocationsAsync(address, new Geopoint(new BasicGeoposition()));
之后,我使用Laucher启动"驱动器"到应用程序并获取导航图:
var geoPos = locFinderResult.Locations[0].Point.Position;
var url = $"ms-drive-to:?destination.latitude={geoPos.Latitude.ToString(CultureInfo.InvariantCulture)}&destination.longitude={geoPos.Longitude.ToString(CultureInfo.InvariantCulture)}&destination.name={address}";
var driveToUri = new Uri(url);
await Launcher.LaunchUriAsync(driveToUri);
直到最近,这在所有设备上都很好。我不需要任何令牌或任何东西,因为我没有在XAML中实现地图控件。但是,几天前,我开始收到Locfinderresult的"无效"响应。它仍然只能在一台设备上使用。我从未使用过任何凭据,所以我不知道为什么它仅适用于此。
有人知道什么可能导致这个问题?
从最近的某个时候开始,Microsoft要求您从Bing Maps开发人员中心获取键以使用此功能。请参阅,说明:https://learn.microsoft.com/en-us/windows/uwp/maps-and-location/authentication-key-key
访问https://www.bingmapsportal.com并创建一个密钥。然后将其添加到您的应用中。
MapService.ServiceToken = "MyKey";