Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android微信簽名知識的總結

Android微信簽名知識的總結

編輯:關於Android編程

前言

最近遇到一個項目的應用要上微信登錄,大家都知道微信登錄是需要開放平台上申請的,在微信開發平台創建移動應用後,需要填寫:


需要填寫的內容

問題

這裡的應用簽名是keystore的證書的md5,但是微信的這個只有一個填寫輸入框,不像百度地圖、高德地圖那樣,有線上的SHA1和開發調試的SHA1兩種,那這就糾結了,在開發運行的時候AS IDE默認使用的簽名keystore是系統的 debug.keystore,系統的和自己項目線上的keystore的MD5、SHA1肯定是不一樣的,那麼問題來了,要怎麼統一用線上的,又不影響開發調試。

解決方案

既然不能同時使用線上和系統debugkeystore,那我們就使用同一個,只要確保MD5、SHA1一致就ok了,微信上我們繼續使用線上的MD5,百度地圖、高端地圖等第三方的一些服務把線上和開發調試的SHA1都使用線上keystore的:

命令行進入線上keystore的文件所在目錄,然後輸入如下命令,即可查看簽名。

keytool -list -v -keystore app-release.jks

復制一份線上的keystore文件在同一個文件夾下:


修改這個keystore文件的別名alias,改成androiddebugkey(系統的debug.keystore的別名就是這個,如果不是這個別名,調試運行的時候會編譯不通過,提示需要使用這樣的alias),使用如下命令來修改:

keytool -changealias -keystore ishopping-debug.jks -alias ishopping -destalias androiddebugkey

-alias後面是原來的別名, -destalias後面是新的別名,記住一定要用androiddebugkey作為別名。

修改調試用keystorestorepasswdkeypasswd的口令為“android”(也需要和系統的debug.keystore的一樣都使用這個口令),使用如下命令來修改:

// 修改密鑰口令
keytool -keypasswd -keystore ishopping-debug.jks -alias androiddebugkey
// 修改密鑰庫口令
keytool -storepasswd -keystore ishopping-debug.jks

每一行命令,後都需要輸入原有的密鑰庫和密鑰口令,然後再輸入新的口令:


修改口令

然後使用開頭的查看簽名MD5和SHA1的命令來查看新的調試開發用的keystore文件,看看簽名是不是和線上的一樣。

最後在gradle裡面配置:

signingConfigs { 
 release { 
 // 此處是相對路徑,可以在module app下新建一個key文件夾把keystore文件拷貝進去
 storeFile file('key/ishopping.jks') 
 } 
 debug { 
 storeFile file('key/ishopping-debug.jks') 
 }
}
buildTypes { 
 release { 
 minifyEnabled false 
 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
 signingConfig signingConfigs.release 
 } 
 debug { 
 signingConfig signingConfigs.debug 
 }
}

配置完後,重新同步gradle,然後重新構建工程,點擊Android Studio菜單欄Build -- Rebuild Project,新的證書才會生效。(只要是替換修改簽名證書,都需要重新構建工程)

總結

以上就是這篇文章的全部內容了,希望本文的內容對各位Android開發者們能有所幫幫助,如果有疑問大家可以留言交流。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved