我一直在调试模式下使用Google Maps API,并且一直运行良好,直到进入发布模式。如果我错了,请纠正我,如果我们想发布我们的应用程序,我们需要一个单独的Google Maps API密钥。
我已完成以下操作:
为了提取SHA-1
键,我导航到project/android/app
,在这里可以看到myapp.keystore
并运行命令keytool -list -v -keystore mypp.keystore
。
创建API_KEY
后,我已导航至project/android/app/src/main/AndroidManifest.xml
并修改了密钥
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="xxxxxx"/>
还可能缺少什么?预先感谢
请注意,这是一个React-Native
项目,没有单独的Release
和Debug
目录/路径来配置APIKEY
答案 0 :(得分:0)
DEBUG
和RELEASE
版本的密钥应分开。如果您在Android Studio中创建Google Maps Activity
,它将创建具有API_KEY值的单独的资源文件google_maps_api.xml
。如您所见,debug和realease版本具有不同的SHA-1 certificate fingerprint
,这意味着它们的密钥不应相同。
当然,这意味着清单中提到的代码应更改为资源引用。
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="@string/google_maps_key"/>
密钥文件应位于以下目录:
src/debug/res/values/google_maps_api.xml
src/release/res/values/google_maps_api.xml
答案 1 :(得分:0)
执行此操作
a)打开android studio。构建->生成签名的APK,然后单击下一步
b)复制您的keystore
路径和密钥alias
。
c)现在打开终端并输入:
keytool -list -v -keystore "key store path" -alias "key alias"
d)输入您的密钥密码,这将打印出您的发行版SHA1。
e)然后在Google项目中使用此SHA1,将其粘贴到此处并保存更改,现在再次运行该应用以加载地图
更新:-
生成debug
密钥
做
a)单击右侧选项栏上的“ Gradle”选项卡
b)转到根文件夹->任务-> android-> signingReport
c)双击,它将使用signingReport构建,并在您的底视图中发布SHA1。