Android Google地图在emulator上显示,但不显示';不在设备上显示

Android Google地图在emulator上显示,但不显示';不在设备上显示,android,google-maps,google-maps-api-3,android-maps,Android,Google Maps,Google Maps Api 3,Android Maps,我正在使用我的谷歌地图应用程序并获取谷歌地图api密钥 “0O8CRG5BHPMQQB1PVYYZQNFJ2ZBPDMA6XF”我使用相同的密钥登录我的应用程序,但问题是emulator上显示地图,但HTC wildfire S设备上不显示。告诉我问题出在哪里???很可能您使用的API密钥与您为应用程序签名的API密钥不相关 您将需要使用与生产证书关联的另一个API密钥,即您在APK上签名的API密钥,而不是调试密钥 尝试使用而不是SDK调试证书中的一个这可能会发生在许多情况下。您可以尝试下面列

我正在使用我的谷歌地图应用程序并获取谷歌地图api密钥

“0O8CRG5BHPMQQB1PVYYZQNFJ2ZBPDMA6XF”我使用相同的密钥登录我的应用程序,但问题是emulator上显示地图,但HTC wildfire S设备上不显示。告诉我问题出在哪里???

很可能您使用的API密钥与您为应用程序签名的API密钥不相关

您将需要使用与生产证书关联的另一个API密钥,即您在APK上签名的API密钥,而不是调试密钥


尝试使用而不是SDK调试证书中的一个

这可能会发生在许多情况下。您可以尝试下面列出的可能解决此问题的情况

  • 尝试打开WiFi Gps或数据交换以接入互联网
  • 检查位置基础设置并打开与应用访问位置相关的所有内容。设置>位置>打开
  • 检查清单中的所有权限。Internet、访问位置、访问位置
  • 检查映射的生成密钥
  • 检查网络获取地图的速度是否良好
需要注意的一点是(如果进行调试),您应该为用于安装应用程序的每台计算机生成一个单独的调试密钥。只有当您计划发布应用程序时,才可以参考@Thomas的答案并生成发布密钥

同时,要查找任何与api密钥相关的问题,只需检查Logcat输出中的
java.io.IOException:服务器返回:3
,这意味着您使用的调试密钥对于安装应用程序的机器无效。

使用此链接


C:\Program Files\Java\jdk1.6.0\u 20\bin>keytool-list-别名androiddebugkey-密钥库“C:\Documents and Settings\Nazeer.android\AndroidGoogleMaps.keystore”-storepass android-keypass android

您必须将与releaseKey.jks(用于签署apk)关联的SHA-1证书指纹添加到地图api密钥:

  • 开放式终端
  • 假设您的releaseKey.jks位于: /Users/macbook/Downloads/Files/releaseKey.jks和您的releaseKey.jks 的别名为demilaram,开放终端和类型:

    keytool-list-v -keystore/Users/macbook/Downloads/Files/releaseKey.jks-别名demilaram

  • 复制SHA1并导航到Google控制台,打开api密钥,然后添加 指纹和包裹名称。在名为“SHA-1证书”的列下 指纹“粘贴SHA1并在名为“包名”的列下” 输入您的包名

  • 点击save,过一段时间(可能10分钟)你就可以 请参阅安装了释放模式apk的设备上的地图

此图像显示在设备上www.imgur.com/p3zkcple请在设备上检查Logcat输出(在详细或调试模式下),并查找任何类似
java.io.IOException:Server returned:3的行。在这种情况下,您使用的api密钥有问题。尝试重新生成密钥。可能的副本请不要在此处显示您的密钥,因为人们可能会误用此密钥。仅当OP正在发布应用程序时,此密钥才有效。假设OP正在使用仿真器,可能意味着它仍处于调试阶段,在这种情况下,不建议使用生产密钥。这一点您是对的。只需像他在应用程序上签名一样阅读它,并使用与emulator中的debugkey一起工作的API密钥!我选择新建创建新密钥库并给出文件夹C:\myfolder\AndroidGooglemap nad给出密码预览映射api密钥0O8CRG5BHPMQB1PVYYZQNFJ2ZBPDMA6XFUNRWATELL我刚刚在cmd C:\Program Files\Java\jdk1.6.0_20\bin>keytool-list-别名androiddebugkey-密钥库上获得此google api密钥usng后告诉我“C:\Documents and Settings\Nazeer\.android\debug.keystore”"-storepass andro id-keypass andro id我得到这个google地图密钥0O8Crg5Bhpmqqb1Pvyyzqnfj2zBpdma6xf现在我为登录做了什么???如何在真实设备上部署应用程序一步一步告诉我在哪里做了什么?你是如何部署这个来在你的HTC设备上测试的?我自己做了我在我的应用程序中登录在位置创建了新的密钥库文件C:\deploymap\AndroidGoogleMaps.keystore提供密码android,并在下一个屏幕中提供别名“androiddebugkey”密码android android获取AndroidGoogleMaps.keystore文件,并像以下C:\Program Files\Java\jdk1.6.0\u 20\bin>keytool-列表-别名androiddebugkey-密钥存储一样放入cmd“C:\Documents and Settings\Nazeer\.android\AndroidGoogleMaps.keystore”“-sto repass android-keypass android并获得新指纹并放入google站点并获得新地图api密钥将此密钥放入xml并使用exist密钥库文件AndroidGoogleMaps.keystore再次登录应用程序,现在应用程序可以正常工作了device@HayyaAnam好。。这就是我在我的帖子里告诉你的吗?;-)我也再次来到这里查看我的上一篇帖子,因为我也忘记了很多天后的方法,所以再次来到这里查找我的帖子,看看我是如何做到这一点的:D