0

我在API控制台中生成了2个API密钥,一个用于调试SHA1(无限制),另一个用于使用发行密钥存储区SHA1(具有Android应用程序限制)进行生产。Google Maps API密钥与已签名的apk一起使用,但在发布后无法使用

我在调试.. \ google_maps_api.xml和释放.. \ google_maps_api.xml中单独使用了API密钥,并在关闭的应用程序标记上方的Manifest中添加了元数据。我生成了一个签名的APK,地图加载正常。我的清单看起来像这样

<application 
    <activity 
     android:name=".MainActivity" 
     android:screenOrientation="portrait" 
     android:windowSoftInputMode="stateHidden|adjustResize" /> 

    <meta-data 
     android:name="com.google.android.gms.version" 
     android:value="@integer/google_play_services_version" /> 

    <activity 
     android:name=".MapsActivity" 
     android:label="@string/title_activity_maps" 
     android:screenOrientation="portrait" /> 

    <meta-data 
     android:name="com.google.android.geo.API_KEY" 
     android:value="@string/google_maps_key" /> 
</application> 

我使用签名servions V1(JAR签名)和V2(全APK签名)生成的签署APK。在Playstore中发布后,地图未加载。任何人都可以请指导我呢?

+0

play store创建一个名为“应用程序签名证书”的新SHA1密钥 [https://stackoverflow.com/a/44330035] –

回答

0

根据此thread,当您导出应用程序以发布它时,您可能不再使用调试密钥库,而是使用自定义密码存储区。当您切换到另一个密钥库时,您必须生成新的Google Maps API密钥。您需要创建发行证书指纹。您可以检查here生成释放证书指纹的步骤。这是另一个reference,可能有帮助。

+0

我使用发行密钥库SHA创建了一个独立的API密钥。我使用keytool -list -v -keystore your_keystore_name -alias your_alias_name来获取SHA – David

相关问题