警告:未指定 MapServiceToken

Warning: MapServiceToken not specified

我一直在使用 MapControl 制作一个 UWP 应用程序,但是当我 运行 该应用程序时,我在底角收到一条错误消息 "Warning: MapServiceToken not specified"。我使用的XAML如下:

<Maps:MapControl x:Name="MapControl1" Loaded="mapLoaded" ZoomLevelChanged="mapZoomChanged" MapServiceToken="AqK9nK0h_LngGSC8pHPzBJvl62yf617zRytgimB3fyYqdJPljcB-EGm3llmUUrlI"/>

如您所见,我已经指定了 MapServiceToken,我也曾尝试使用 C# 指定它,但没有成功。

MapService.ServiceToken = "AqK9nK0h_LngGSC8pHPzBJvl62yf617zRytgimB3fyYqdJPljcB-EGm3llmUU...";
MapControl1.MapServiceToken = "AqK9nK0h_LngGSC8pHPzBJvl62yf617zRytgimB3fyYqdJPljcB-EGm3llmU...";

我已使用 www.bingmapsportal.com 获取我的令牌,但我也尝试使用 Windows 开发中心的应用程序 ID 和身份验证令牌。有什么想法吗?

登录 Microsoft Dev 帐户并导航到此 URI

https://www.bingmapsportal.com/Application#

这里可以获取到Universal的Key。

可以在XAMLMapServiceToken中设置,效果很好!

注意: 对于可能使用来自 Windows 8 平台

的旧密钥的用户

将旧密钥更新为通用 Windows 平台类型似乎存在问题。我有一个 2014 年创建的密钥,但即使我将密钥更新为 Universal Windows,当我将密钥放入 XAML 的 MapServiceToken 值时,它仍然不会授权。 (当您更改键的类型时,键本身的值似乎永远不会改变,即使它应该更新为新值)

为了解决这个问题,您必须创建一个全新的应用程序密钥并改用该值,然后警告消息就会消失。

此外,您可以直接在 Bing 地图上登录以生成密钥。

https://www.bingmapsportal.com/

我的账户 -> 我的密钥

对于 UWP,此密钥很长。

仅供参考,当我使用 MapServiceToken 属性 在 XAML 上为 MapControl 添加密钥时,该应用程序使我的计算机崩溃。然后当我重新启动它时,App 运行 好了。哦天哪...

阅读微软文档 https://docs.microsoft.com/en-us/windows/uwp/maps-and-location/authentication-key

生成新密钥并将其添加到 MapControl MapServiceToken 中。它对我有用。

我遇到了同样的问题,但这是我的解决方案。

首先导航到 https://www.bingmapsportal.com/Application。找到 link 创建一个新密钥。

在表单中,填写 Application type 字段。可用的选项是:

  • Dev/Test
  • Mobile Application
  • Website
  • Windows Application

即使您正在开发 Xamarin.Forms 项目(直观上是一种移动应用程序),您也必须选择 Windows Application 而不是 Mobile Application。为什么?原因可能是 "UWP is an Windows Application"。期间.

不这样做会触发警告。