2

我对我所经历的事情感到困惑

我将 Google Map API v2 用于我的应用程序。我已经使用地图 片段来显示地图。它适用于 2.2 以上的许多设备。它在直接运行到设备时完美运行,但是当我将应用程序导出到 *.apk 然后安装到设备中时,运行应用程序,它只显示白屏.....

我已经搜索过这个问题,解决方案是使用 API KEY 和 apk 签名。我不知道如何签署apk?什么是释放密钥?

请帮助我,我从过去 2 天开始就被困住了。提前致谢..

面对这个错误..

在此处输入图像描述

UPDATE :

我的错误是我没有使用创建 apk 时生成的 SHA 指纹。它第一次显示在控制台中,下一次显示在 apk 导出屏幕上。

这是相同的屏幕截图

FIRST TIME OF APK CREATION :

在此处输入图像描述

NEXT TIME :

在此处输入图像描述

感谢大家提出宝贵的建议和回复。谢谢。

4

5 回答 5

2

您需要执行以下操作才能使您的地图在调试模式和发布模式下都可见

-1 在 Google API 控制台添加调试密钥到包组合

-2 在 Google API 控制台添加发布键到页面组合

注意:您需要添加至少 2 个组合才能在测试和生成 *.apk 文件时显示您的地图。您现在缺少的不是将发布密钥添加到应用程序包组合到 API 控制台添加此内容,然后执行以下操作:

用发布密钥替换您的调试地图密钥并生成您的 *.apk 并将应用程序安装到您的设备上,您将获得您的地图网上有几个可用的教程我建议您使用以下 Google 地图

要生成 Release 密钥,请执行以下步骤 打开 CMD(在 Windows 中)终端(在 Linux?MAC os 中)找到您的 jdk 目录的路径,然后到 bin,如下所示:

C:\path-to-jdk\jdk1.7.0_07\bin>keytool -v -list -alias tt -keystore path-to-keystore -storepass 密码 -keypass passowrd

对我来说,Jdk/bin 和密钥库的路径如下

C:\Program Files\Java\jdk1.7.0_07\bin>keytool -v -list -alias tt -keystore D:\keyStore -storepass 密码 -keypass 密码

您需要自己提供以下内容

-1 到 jdk 的路径

-2 密钥库的路径

-3 密钥库密码

-4 keypass 密码

于 2013-10-25T13:21:51.450 回答
0

您可以在此处生成 api 密钥:https ://code.google.com/apis/console/ ‎</p>

关于发布密钥,是这篇文章: http: //developer.android.com/tools/publishing/app-signing.html 但这不是必需的,默认由 debug.keystore 签名。下面关于这个很好的教程。

这是关于地图 v.2 的官方 Google 教程:https ://developers.google.com/maps/documentation/android/start

于 2013-10-25T13:15:25.627 回答
0

我有一个很好的教程,每个步骤都通过截图解释 http://androidstudies.wordpress.com/2013/05/30/view-map-in-you-android-appliciopn/ 实际上 Api 密钥是出于安全目的所以没有虚假请求被发送到谷歌服务器(有时黑客会做这样的事情)

于 2013-10-25T13:57:14.490 回答
0

有两个键。调试和释放键。调试密钥适用于未签名的 apk,发布密钥适用于已签名的 apk。如果您通过调试密钥签署了您的 apk,那么您的地图看起来是空白的。因此,如果您导出应用程序,请使用发布密钥。

释放密钥程序,您可以在此处进行操作。

Google Map Android API v2 无法在 Play 商店应用程序中显示地图

于 2013-10-26T04:27:38.843 回答
0

请按照以下分步流程进行操作:

step1:创建密钥库

C:\Program Files\Java\jdk1.7.0_21\bin>keytool -genkey -v -keystore keystorename.keystore -alias pwd -keyalg RSA -keysize 2048 -validity 10000

step2:将所有需要的android项目转换为ant项目以运行'ant release'

E:\myworkspace\sample\myproject>android 更新项目 --path 。

step3:运行ant release

E:\myworkspace\sample\myproject>ant 发布

第 4 步:签署 apk

E:\myworkspace\sample\myproject>jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore path\to\keystore path\to\generate\unsigned.apk pwd

第 5 步:验证签名的 jar

E:\myworkspace\sample\myproject>jarsigner -verify -verbose -certs path\to\generate\unsigned.apk

第 6 步:对齐 apk

E:\myworkspace\sample\myproject>zipalign -v 4 path\to\generate\unsigned.apk "path\to\final\released\final.apk"

参考这个链接:http: //developer.android.com/tools/publishing/app-signing.html

于 2013-10-26T14:52:49.747 回答