【问题标题】:My mapView dosen't show the map just shows the overlay items我的 mapView 不显示地图只显示覆盖项目
【发布时间】:2012-10-31 14:01:01
【问题描述】:

我已经多次尝试使用过多的 MD5 在https://developers.google.com/android/maps-api-signup 中生成我的密钥,但没有成功。 当尝试使用 MapView 时 var mapIntent = new Intent (Intent.ActionView, geoUri) 它有效,但我不能放置我的叠加项目。 我需要从布局中使用我的 MapView,但只显示线条和覆盖项。 我尝试在手机中使用示例 HelloMap 但发生同样的事情并没有显示地图只是覆盖项目。

【问题讨论】:

  • 你在你的xml文件中添加了密钥吗?
  • 您的 LogCat 是否输出类似“没有 Maps-Api 密钥”的内容?您必须使用带有 -v 选项的 keytool 来输出 md5,而不仅仅是 shaXXX
  • 向我们展示:Manifest、mapview xml 或代码、logcat 消息...
  • 这可能是巧合,但这周一发生在我身上 - 它没有显示任何内容......可能是win8或vs2012的区别吗? (作为参考,我之前发布了几个带有地图的 MonoDroid 应用程序)
  • 我也在使用 win8 和 vs2012 以及 monodroid。周一发生在你身上的这个问题,你解决了吗?

标签: android overlay android-mapview xamarin.android md5


【解决方案1】:

要么您没有有效的密钥,要么您忘记将 uses-library 行放入清单中。

【讨论】:

  • 我把我的密钥放在 xml 中,我也在运行时尝试过,但是没有用。
  • 您确定您的密钥与此计算机上的调试签名密钥正确匹配(或者,如果您正在构建版本,则发布签名密钥)?你的清单中有 吗?
  • 我在 manifest 中使用了 。如果我可以在发布中生成如何生成发布或调试密钥有什么区别?
  • 当您请求 google maps api 的密钥时,它要求您向他们提供您的签名密钥的哈希值。如果您给他们您的调试密钥并使用您的发布密钥签名,则不会匹配并且不会打开地图。如果你反过来做也是一样的。您提供给他们的哈希值必须与您应用的签名密钥相匹配。
  • 如何生成我的发布密钥?因为我只知道如何生成调试密钥。我使用这个站点developers.google.com/android/maps-api-signup 来放置我的 MD5 并生成我的密钥。我不知道如何生成我的密钥来发布我的应用程序
【解决方案2】:

我在本周一看到了完全相同的东西 - 但自从调试它之后就没有返回项目。

我怀疑这可能是 VS2012 或 Windows8 的错误,因为我之前已经从同一台 PC 上发布了多个地图应用程序(在 VS2012 和 Win8 之前)

如果你现在有这个可重现的,我认为你应该用 Xamarin 记录这个 - support@xamarin.com 或 http://bugzilla.xamarin.com

【讨论】:

  • 这很奇怪,因为我认为系统操作不能改变发布方法。我现在没有Win7来测试这个。你能测试一下吗?
  • 这里也不行。发送到 Xamarin
【解决方案3】:

生成我使用的密钥库

C:\Program Files\Java\jdk1.6.0_20>keytool -genkey -alias umAlias -keystore C:\localParaoArquivo\nomedoarquivo.keystore

查看我使用的 md5

C:\Program Files\Java\jdk1.6.0_20>keytool -list -v -keystore C:\localParaoArquivo\nomedoarquivo.keystore

我把我的密钥放在 xml 中,我也在运行时尝试过,但是没有用。

MD5 和 SHA1 有什么区别? 我在清单中使用

    <uses-library android:name="com.google.android.maps" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.CONTROL_LOCATION_UPDATES" />

【讨论】:

  • MD5 和 SHA1 是完全不同的哈希算法。我忘记了所有的区别是什么,但是如果 Google 需要一种格式而你给他们另一种格式,它就行不通了。
【解决方案4】:

我解决了这个问题!!!! \o

而不是生成发布 .apk 我发布 .apk 因为我将发布到商店! 我的 MapView 适用于 3g 和 wi-fi。 谢谢大家的帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-30
    • 1970-01-01
    • 2014-09-23
    • 1970-01-01
    相关资源
    最近更新 更多