【问题标题】:Xamarin Forms Maps not displayed on android deviceXamarin Forms Maps 未显示在 android 设备上
【发布时间】:2017-03-24 09:07:17
【问题描述】:

我在我的 Android 设备上运行 PCL Xamarin.Forms 应用程序时遇到问题。应用加载但地图没有加载,如下图所示:Here

代码与下面的 Xamarin sample 完全相同

我已经尝试放大/缩小,但没有效果。我不在代理服务器后面,也没有错误消息或任何显示。我不知道是设备造成的,还是代码造成的,因为甚至模拟器都不能使用这个示例。

【问题讨论】:

  • 您是在物理设备上运行它吗?您还输入了有效的 API 密钥吗?仔细检查构建输出窗口,看看那里是否有任何隐藏的错误。
  • 检查 google play 服务是否需要更新。如果是,请更新并重试。
  • 仅供参考/请注意最新 Xamarin.FormsXamarin.Forms.Maps - 还有一个 bug。在Xamarin Forums 中讨论了更多问题。
  • @EdSF 似乎地图 API 密钥是问题所在。但是在示例描述中应该已经提到了密钥是必要的
  • 明白。在更新到最新的FormsMapsGoogle Play ServicesCorrected bug link

标签: google-maps xamarin xamarin.android xamarin.forms


【解决方案1】:
【解决方案2】:

对于已发布的应用,您必须从 Play 管理中心获取 SHA1

【讨论】:

    【解决方案3】:

    此解决方案在 Mac OSX 上使用:

    ==> 在调试时,您需要 Google API 凭据中的公共 sha1 和包名称,您将通过以下方式获得此 sha1:

    1- 打开终端。

    2- 键入:keytool -list -v -强文本keystore ~/.local/share/Xamarin/Mono\ for\ Android/debug.keystore -alias androiddebugkey -storepass android -keypass安卓

    ==>在发布(用于发布)中,您需要 Android 签名身份的 sha1 而不是您的公众:

    1- 打开终端。

    2- keytool -list -v -keystore /Users/[用户名]/Library/Developer/Xamarin/Keystore/[身份名称]/[身份名称].keystore -alias [身份名称]。

    【讨论】:

    • 请格式化您的答案,使其更具可读性。比你!
    • 抱歉,已编辑
    【解决方案4】:

    我遇到了同样的问题,尽管我按照本指南中的所有步骤操作:https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/map/setup

    我的问题是它曾经显示的地图,然后我在一个月后再次尝试,只显示下面的 Google 图标。

    我的问题是我换了电脑,所以即使我的 API Key 相同但 SHA1 现在不同了,我只是从新电脑上得到它并在控制台云凭据中更新它。

    之后,问题就解决了。

    这是一个有用的链接:https://docs.microsoft.com/en-us/xamarin/android/platform/maps-and-location/maps/obtaining-a-google-maps-api-key?tabs=windows

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-10
      • 2019-10-20
      • 1970-01-01
      • 1970-01-01
      • 2021-12-29
      • 1970-01-01
      • 2018-03-16
      • 2020-07-18
      相关资源
      最近更新 更多