天天看點

android 內建高德地圖遇到的問題,高德地圖內建所遇的坑

INVALID_USER_SCODE報錯

出現這個問題是因為生成key的sha1和App使用的應用不一緻。

官方操作

首先,我跟着官方介紹一波神操作,我使用的是官方提供的第三種方式,使用 keytool(jdk自帶工具)擷取 SHA1

1、運作進入控制台。

2、在彈出的控制台視窗中輸入 cd .android 定位到 .android 檔案夾。

android 內建高德地圖遇到的問題,高德地圖內建所遇的坑

3、繼續在控制台輸入指令。

調試版本使用 debug.keystore,指令為:keytool -list -v -keystore debug.keystore。 釋出版本使用 apk 對應的 keystore,指令為:keytool -list -v -keystore apk 的 keystore 。

android 內建高德地圖遇到的問題,高德地圖內建所遇的坑

提示輸入密鑰庫密碼,開發模式預設密碼是 android,釋出模式的密碼是為 apk 的 keystore 設定的密碼。輸入密鑰後回車(如果沒設定密碼,可直接回車),此時可在控制台顯示的資訊中擷取 Sha1 值,如下圖所示:

android 內建高德地圖遇到的問題,高德地圖內建所遇的坑

說明:keystore 檔案為 Android 簽名證書檔案。

終極解決方法

跟着官方操作之後,發現依然報錯INVALID_USER_SCODE驗證不通過,分别使用debug.keystore和keystore中的SHA1也不可以,搞了半天,晚上回來後又仔細看了一下報錯資訊。

android 內建高德地圖遇到的問題,高德地圖內建所遇的坑

發現圖中報錯的SHA1和通過官方方式得到的SHA1是不一樣的。也就是說當時App使用的這個SHA1,是以我們把此SHA1複制到高德地圖管理台,然後生成Key即可解決問題。

謹記仔細看報錯資訊!

PS:雖然找到問題的解決方法,但是一直不能明白為什莫,兩個SHA1會不一緻,有明白的大神可以指點一下。