2017-08-10 91 views
2

正如標題中所述,地圖活動在我上傳應用程序後顯示空白(底部帶有Google徽標)。我知道這個問題已經被問了很多次,但沒有一個解決方案能夠解決我的問題。地圖活動在上傳到Play商店後空白

這是我迄今所做的:

  • 生成谷歌地圖發佈API密鑰(與SHA-1簽名)以下,官方指導here並把它放在下釋放/ RES /值/google_maps_api.xml
  • 將硬編碼到AndroidManifest.xml中
  • 清理並重建項目發佈API密鑰

這是結果:

  • 如果是手動安裝到設備上傳到Play商店前的APP-release.apk地圖活動只是工作完美的罰款。
  • 如果app-release.apk之後的app-release.apk上傳到Play商店,則地圖活動顯示空白。

解決方案:

answer解決我所面臨的問題。之前Google地圖活動顯示空白的原因,因爲Google Play會使用我提供的原始應用簽名密鑰重新簽名該應用。因此,只需複製Google SHA-1並將其粘貼到生成Google Map API密鑰的控制檯即可。

+0

它必須是一個API密鑰訪問的東西。也許你需要將某個IP地址列入白名單? –

+0

我並不確定是因爲所有的alpha測試人員都會遇到同樣的問題。你能提供更多的指導或鏈接,所以我可以通過嘗試嗎? – Gideon

+1

你見過以下答案:https://stackoverflow.com/a/44672565/5140781?看起來它解釋瞭如何解決你的問題。 – xomena

回答

1

如果在任何項目中添加GMap活動,那麼有兩個google_maps_api.xml。
一個用於調試,一個用於發佈。

enter image description here

也許您只是在調試時輸入了密鑰,因爲當我們添加Gmap活動時,只有google_maps_api.xml打開。所以把你的鑰匙也釋放。怎麼樣?......看。

  1. 單擊Android Studio底部條上的TODO。 enter image description here
  2. 單擊TODO的基於範圍的選項卡。 enter image description here
  3. 現在有兩個google_maps_api.XML,打開它們並將您的密鑰 複製到XML(無密鑰)(YOUR_KEY_HERE)。 enter image description here 這也發生在我身上。
+0

感謝您的回答。正如我的問題所述,我已將發佈API密鑰放在release/res/values/google_maps_api.xml – Gideon

+0

正如您所提到的「硬編碼」,所以您可以嘗試這種方式,而不是硬編碼。 –

+0

後硬編碼它,我已經改變了它回到了android:值=「@字符串/ google_maps_key」。你可以參考我的問題。 – Gideon

0

您錯過了添加權限,請嘗試通過包含權限進行檢查。

<uses-permission android:name="android.permission.INTERNET" /> 
+1

我已經添加了互聯網許可,但地圖活動還是空白。 – Gideon

相關問題