未签名的 apk 与已签名的 apk Google 地图未显示

Unsigned apk vs signed apk Google Map not showing

我做了一个 Android 应用程序,它从服务器数据库中获取数据。 如果我从 USB 安装或安装未签名的 apk 安装它,一切正常,但是,如果我从签名的 apk 安装它(或从 PlayStore 下载),地图 activity 不起作用。

安装后,我的应用会向 API 发出请求,以便获取其数据库中的数据并填充应用的数据库,以便我可以显示来自应用数据库的数据。

我知道它正在获取数据,因为我可以看到除了地图 Activity 之外的所有内容,如下所示:

USB/Unsigned 应用程序:

已签名的 apk:

有谁知道这两个 apk 之间是否存在可能导致这种意外行为的差异?

提前致谢

您已经使用您的调试证书创建了一个地图 API 密钥,但没有使用您的发布证书。

按照此处的步骤获取新密钥

https://developers.google.com/maps/documentation/android-api/

你们生成发布证书吗?检查 here。我认为这可以解决你的问题。

您需要使用密钥库文件和 Signed Apk

的密码创建发布密钥

然后你必须在开发者控制台中添加密钥

步骤 1

在命令提示符中:

 keytool -list -v -keystore /home/rafsan/Desktop/Android/Projects/TestApp/keystore.jks -alias test -storepass password -keypass password

哪里

/home/rafsan/Desktop/Android/Projects/TestApp/keystore.jks 是您的 keystore 签名 apk 文件所在的路径

test 是生成签名密钥库时使用的密钥 alias 名称

password是签名apk时使用的password

步骤 2

转到Developer console

并在包中添加发布密钥

A3:33:EA:3D:5E:....................85;com.example.package_name