0
當我從谷歌下載我的應用程序時,Google Map未加載。 當我直接下載帶有.apk文件的應用程序(將其傳輸到我的手機並下載)時,它確實加載了! 我搜遍了,它仍然無法正常工作。 這是我做過什麼:從Google Play商店下載我的應用程序時Google Map未加載
- 在Android Studio中,建設 - >生成登錄APK我創建了一個新的密鑰存儲「密鑰庫」和一個新的關鍵「應用」
- 運行命令:keytool -list -v -keystore keystore.jks -alias應用程序。
- 在步驟2的輸出中,在'證書指紋:'下,我採用了'SHA1'值和我的軟件包名稱'com.gilshelef.feedme'(來自AndroidManifest.xml文件),並在Google中生成了一個新的API密鑰api控制檯。我將密鑰限制爲'android apps',並添加了我的SHA1和包名。
我放置所生成的密鑰(步驟3)在我的清單文件:
<meta-data android:name="com.google.android.geo.API_KEY" android:value="@string/google_maps_key" />
在機器人工作室,建設 - >生成符號APK我使用了在步驟1中創建的相同的密鑰庫和同樣的鑰匙。
我將生成的apk文件上傳到Google play。
當我從谷歌下載我的應用程序後,地圖仍然是空白!
注:
- 我也試圖從.jks改變了密鑰庫的擴展的.keystore由於Android Studio使用.jks擴展。
- 我驗證了來自google api控制檯的密鑰和我在AndroidManifest.xml文件中使用的密鑰是相同的。
- 我在google api console和Manifest文件中驗證了包名。
- 我跟着這個:this教程'顯示釋放證書指紋'。輸出看起來與「簽名算法名稱:SHA1withRSA」相同。我的發佈密鑰庫中的簽名算法名稱是'SHA256withRSA'也許這是問題?
我在做什麼錯?
這正是我所做的......如步驟中所述。我使用keytool從發佈密鑰庫中獲取了SHA1指紋。使用google api控制檯創建新的api密鑰,並將該密鑰添加到我的發佈中google_maps_api.xml ... –
我從通過android studio生成的'keystore.jks'獲取的SHA1指紋。我在步驟2中使用了keytool命令。 –
我發誓它不在你的問題中:o!但是我將釋放鍵放在res/release/values/google_maps_api.xml中,而不是直接放在清單文件中。 –