我正在将APP上传到Play商店。它上传得很好,但有一个不便之处,我正在使用的地图在调试模式下显示,但是当我在生产中使用我的应用程序时(当我将APP上传到市场并从那里下载时)。当我尝试打开地图时会显示灰色屏幕。我正在使用谷歌地图。
我做了什么:
我创建了一个发布配置文件来签署我生成APK时使用的APK。要使用我的证书配置文件的名称,别名和密码对我在APK(在Android Studio上)Build > Generate Signed APK
进行签名。
我使用我在之前步骤中创建的证书的SHA-1和项目包的名称生成了Google Maps API凭据。我限制它只允许在Android上使用。它给我带来了一把钥匙。
我在项目的AndroidManifest.xml
文件中添加了这两行:
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="@string/google_maps_key" />
其中@string/google_maps_key
是我在第二步中获得的密钥,而且我已存储在strings.xml
文件中。
我知道Stackoverflow中存在一些相关问题,但大多数建议生成我已创建的两个证书之一。
我错过了一些要求吗?我应该改变一些配置吗?
提前致谢!
答案 0 :(得分:3)
当您生成Google地图密钥时,是否已将调试的SHA-1或发布证书放入?如果你把调试SHA-1,也添加版本。
<强>更新强>
另外,执行地图实现的正确方法是使用带调试密钥的debug / res / values / google_maps_api.xml和带有生成密钥的另一个release / res / values / google_maps_api.xml。 strings.xml中不应该有键。有关这方面的更多信息,请阅读here。