Android微信簽名知識(shí)的總結(jié)
前言
最近遇到一個(gè)項(xiàng)目的應(yīng)用要上微信登錄,大家都知道微信登錄是需要開放平臺(tái)上申請(qǐng)的,在微信開發(fā)平臺(tái)創(chuàng)建移動(dòng)應(yīng)用后,需要填寫:
需要填寫的內(nèi)容
問(wèn)題
這里的應(yīng)用簽名是keystore
的證書的md5,但是微信的這個(gè)只有一個(gè)填寫輸入框,不像百度地圖、高德地圖那樣,有線上的SHA1和開發(fā)調(diào)試的SHA1兩種,那這就糾結(jié)了,在開發(fā)運(yùn)行的時(shí)候AS IDE默認(rèn)使用的簽名keystore
是系統(tǒng)的 debug.keystore
,系統(tǒng)的和自己項(xiàng)目線上的keystore
的MD5、SHA1肯定是不一樣的,那么問(wèn)題來(lái)了,要怎么統(tǒng)一用線上的,又不影響開發(fā)調(diào)試。
解決方案
既然不能同時(shí)使用線上和系統(tǒng)debug
的keystore
,那我們就使用同一個(gè),只要確保MD5、SHA1一致就ok了,微信上我們繼續(xù)使用線上的MD5,百度地圖、高端地圖等第三方的一些服務(wù)把線上和開發(fā)調(diào)試的SHA1都使用線上keystore
的:
命令行進(jìn)入線上keystore
的文件所在目錄,然后輸入如下命令,即可查看簽名。
keytool -list -v -keystore app-release.jks
復(fù)制一份線上的keystore
文件在同一個(gè)文件夾下:
修改這個(gè)keystore
文件的別名alias
,改成androiddebugkey
(系統(tǒng)的debug.keystore
的別名就是這個(gè),如果不是這個(gè)別名,調(diào)試運(yùn)行的時(shí)候會(huì)編譯不通過(guò),提示需要使用這樣的alias),使用如下命令來(lái)修改:
keytool -changealias -keystore ishopping-debug.jks -alias ishopping -destalias androiddebugkey
-alias
后面是原來(lái)的別名, -destalias
后面是新的別名,記住一定要用androiddebugkey
作為別名。
修改調(diào)試用keystore
的storepasswd
和keypasswd
的口令為“android”(也需要和系統(tǒng)的debug.keystore
的一樣都使用這個(gè)口令),使用如下命令來(lái)修改:
// 修改密鑰口令 keytool -keypasswd -keystore ishopping-debug.jks -alias androiddebugkey // 修改密鑰庫(kù)口令 keytool -storepasswd -keystore ishopping-debug.jks
每一行命令,后都需要輸入原有的密鑰庫(kù)和密鑰口令,然后再輸入新的口令:
修改口令
然后使用開頭的查看簽名MD5和SHA1的命令來(lái)查看新的調(diào)試開發(fā)用的keystore
文件,看看簽名是不是和線上的一樣。
最后在gradle里面配置:
signingConfigs { release { // 此處是相對(duì)路徑,可以在module app下新建一個(gè)key文件夾把keystore文件拷貝進(jìn)去 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,然后重新構(gòu)建工程,點(diǎn)擊Android Studio菜單欄Build -- Rebuild Project,新的證書才會(huì)生效。(只要是替換修改簽名證書,都需要重新構(gòu)建工程)
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)各位Android開發(fā)者們能有所幫幫助,如果有疑問(wèn)大家可以留言交流。
相關(guān)文章
Flutter底部不規(guī)則導(dǎo)航的實(shí)現(xiàn)過(guò)程
這篇文章主要給大家介紹了關(guān)于Flutter底部不規(guī)則導(dǎo)航的實(shí)現(xiàn)過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Flutter具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08詳解OpenGL Shader彩虹條紋效果的實(shí)現(xiàn)
這篇文章主要為大家介紹了如何通過(guò)OpenGL Shader實(shí)現(xiàn)彩虹條紋效果,最后的效果和圖片處理軟件colorow中的彩虹效果濾鏡相似,需要的可以參考一下2022-02-02Android中的Handler與多線程應(yīng)用實(shí)例
這篇文章主要介紹了Android中的Handler與多線程應(yīng)用實(shí)例,本文首先解釋一下handler是用來(lái)干嘛的,然后通過(guò)例子介紹其在多線程中的應(yīng)用,需要的朋友可以參考下2015-03-03Android App中制作仿MIUI的Tab切換效果的實(shí)例分享
這篇文章主要介紹了Android App中制作仿MIUI的Tab切換效果的實(shí)例分享,實(shí)現(xiàn)具有跟隨手指滾動(dòng)而滾動(dòng)功能的ViewPagerIndicator,需要的朋友可以參考下2016-04-04Android開發(fā)基于ScrollView實(shí)現(xiàn)的漸變導(dǎo)航欄效果示例
這篇文章主要介紹了Android開發(fā)基于ScrollView實(shí)現(xiàn)的漸變導(dǎo)航欄效果,涉及ScrollView事件響應(yīng)及元素屬性動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-12-12Android仿微信圖片上傳帶加號(hào)且超過(guò)最大數(shù)隱藏功能
這篇文章給大家分享android仿照微信空間上傳圖片,顯示圖片數(shù)量以及超過(guò)最大,上傳按鈕隱藏功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧2018-03-03Flutter實(shí)現(xiàn)手勢(shì)識(shí)別功能詳解方法
在Flutter中使用GestureDetector可以來(lái)完成對(duì)手勢(shì)的識(shí)別,包括長(zhǎng)按、滑動(dòng)、雙擊等手勢(shì),這篇文章主要介紹了Flutter實(shí)現(xiàn)手勢(shì)識(shí)別功能2022-11-11