1. 程式人生 > >高德地圖開發獲取SHA1碼

高德地圖開發獲取SHA1碼

本文轉載自:http://www.jianshu.com/p/3c4945812556?nomobile=yes,若要轉載請標明出處

如何獲取sha1碼?

在eclipse中獲取sha1碼

如果你是用的eclipse在開發,那麼獲取sha1碼還是比較簡單的。直接:winows -> preferance -> android -> build。(我的eclipse解除安裝了,所以借用網友的圖)


eclipse中獲取
在Android Studio中獲取sha1碼

最近開發,在整合高德地圖的時候用到了sha1碼。我就用我獲取的過程舉例,這樣可能更加直觀,大家也能馬上用到。

申請高德地圖的Key的時候分別需要除錯模式下的sha1碼和釋出模式下的sha1碼。

獲取除錯模式下的sha1碼
其實,如果你仔細看高德官方文件,文件中是告訴你如何獲取sha1碼的,而且有多種方法。這裡我只說如何通過命令列獲取。以及獲取過程中的一些小坑。
開啟dos視窗,按照官方提供的方法輸入keytool -list -v -keystore debug.keystore這時你可能遇見第一個坑,提示你keytool 不是內部命令也不是可執行程式


不是內部或外部命令


這個是因為keytool是java命令,如果你沒有將C:\Program Files\Java\jdk1.7.0_67\bin加入到path中是無法使用該命令的。如果不想新增到path中,你也可以切換到該目錄下再使用keytool命令。

成功新增或切換後,你繼續使用keytool -list -v -keystore debug.keystore命令,你就會掉到第二個坑當中,提示你祕鑰庫檔案不存在。


祕鑰庫檔案不存在


這裡的祕鑰庫檔案就是指的debug.keystore,它在哪呢?一般我們預設生成的位置在c:\users\Administrator\.android\debug.keystore 。所以上面的命令可以修改為:keytool -list -v -keystore c:\users\Administrator\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android

  • -alias為別名,一般預設為androiddebugkey
  • -storepass和-keypass都是密碼,一般都是預設為android
    如果你發現沒有debug.keystore檔案,那你就得自己生成一個了,具體生成問某度。

    除錯模式

經過以上步驟,你已經拿到了除錯模式下的sha1碼了,但是我們正式釋出我們的專案的時候sha1碼是不一樣的。

要想獲取釋出版的sha1你得有自己的keystore。在Android Studio中你可以方便的建立自己的keystore。步驟:點選工具欄 Build --> generate singed apk,填寫相關資訊, 按步驟生成自己的keystore。
然候在命令列中輸入:keytool -list -v -keystore E:\{yourpath}\keystore\app.jks -alias app -storepass mima -keypass mima

  • -alias 別名,就是你生成keystore時填寫的別名,我這裡填寫的是app
  • mima 就是是你自己設定的密碼,填寫正確就可以

如果你都填寫正確,就會得到與上圖類似的視窗,你可以看到你釋出模式下的sha1碼了,這裡我就不再截圖了。

有時候還需要獲取應用的簽名,同樣是使用上面的命令,獲取到的MD5就是你的應用簽名。