谷歌地图在模拟器上工作,但不在真实设备上

问题描述 投票:-1回答:4

我应用google developer doc中提到的确切步骤来创建一个示例谷歌地图项目,一切都在模拟器上很好,但当我生成项目apk文件并在真实设备上启动它三星Galaxy S4谷歌地图不显示它只显示一个空白背景,左下方的屏幕角出现了带有彩色Google徽标的空白背景!

可能是什么问题呢? Plz帮助。

android google-maps android-emulator
4个回答
0
投票

它正在调试模式上运行模拟器,因为您使用的是已映射到debug.keystore文件的Google Map Api键。要将Google Map访问到真实设备,您必须使用用于生成apk文件的密钥库文件生成Google Map密钥。


0
投票

您是否在手机上安装了Google Setting App

google settings

检查一下 enter image description here


0
投票

生成签名APK时,您将获得.keystore.jks文件。实际上,您必须为您的应用程序创建指纹,稍后用于在Google developer console中生成Android Key。

现在您要做的是使用该命令生成SHA-1证书指纹

 keytool -list -v -keystore "path_to_jks_file.jks" -alias androiddebugkey -storepass android -keypass android

在那个path_to_jks_file.jks中你应该给出你在生成签名APK时获得的.jks文件的路径。

从谷歌开发者控制台获取你的Android密钥然后将其添加到清单中

enter image description here

并记得将签名配置添加到您的build.gradle

signingConfigs {
        release {
            storeFile file("myreleasekey.jks")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
    }

Signing your application

Visit澄清。

详细解释Signup and API Keys

AFAIK这些信息足以解决您的问题。如果有的话,请告诉我。


0
投票

重要的是要记住Build Releases调试和发布模式通常具有不同的(.xml)值文件。如果您使用链接资源文件(例如:Google_maps_api.xml)来管理您的Maps Api密钥,则需要使用相应的密钥更新这两个文件。

必须使用与上述相同的过程对密钥进行签名(使用.jks密钥库文件..etc)

© www.soinside.com 2019 - 2024. All rights reserved.