我們有時候在開發(fā)調(diào)試的時候會有需要直接使用軟件的正式簽名去調(diào)試的情況送讲,這就涉及到as里邊要怎么配置運(yùn)行的簽名文件的問題了。
1.擁有一個簽名文件
? ? ? ? 如果有簽名文件可直接跳過這個步驟赫蛇。沒有簽名文件的你需要先擁有一個簽名文件才能繼續(xù)后續(xù)的操作萧恕,那么要怎么擁有呢贯莺,具體如下:
? ? 在as頁面點(diǎn)擊Build---Generate Sigined Apk藤为,然后會出現(xiàn)一個給Apk設(shè)置簽名文件的彈窗頁面,如下:
? ?如果沒有點(diǎn)擊 Create new... 按鈕來新建一個簽名文件堪唐,點(diǎn)擊后頁面如下:
這里新建一個簽名文件需要填寫一些軟件的基本信息巡语,這里要記住的有簽名文件的密碼 ,別名和別名的密碼淮菠,在對軟件簽名的時候會使用到這些信息男公。 這里的Key storepath是簽名文件保存的路徑。
2.為項(xiàng)目添加簽名文件
將剛才新建的簽名文件設(shè)置到項(xiàng)目中來合陵。
具體操作:點(diǎn)擊項(xiàng)目設(shè)置圖標(biāo)枢赔,然后點(diǎn)擊右側(cè)的app會出現(xiàn)項(xiàng)目的配置頁面。
然后在點(diǎn)擊頁面中的signing標(biāo)簽會出現(xiàn)配置簽名文件的頁拥知,如下
這里配置好點(diǎn)擊ok后在app的build.gradle文件中會出現(xiàn)這樣的內(nèi)容:
????···
signingConfigs {//配置簽名文件踏拜,可配多個標(biāo)簽 如release,debug等簽名文件
? ? release {
storeFile file('hello')
storePassword "1234"
? ? ? ? keyPassword "1234"
? ? ? ? keyAlias "1234"
? ? }
}
????···
3.配置項(xiàng)目編譯時使用的簽名文件
我們平時在調(diào)試項(xiàng)目直接點(diǎn)擊運(yùn)行的時候生成的apk是由as在編譯時給我們生成了一個臨時的簽名文件去做的簽名低剔,如果換一臺電腦運(yùn)行項(xiàng)目簽名文件會發(fā)生改變速梗,這樣情況下做軟件升級安裝的話會提示安裝失敗的。
固定軟件運(yùn)行時debug版本apk的簽名依然是在項(xiàng)目設(shè)置中襟齿,點(diǎn)擊buildtype標(biāo)簽姻锁,然后會有release版本的簽名文件配置和debug版本的配置。 這里直接運(yùn)行的時候是debug包蕊唐,配置debug的簽名文件就可以了屋摔。這里的signing Config選擇的就是我們第二步配置的簽名文件烁设,如果有多個簽名文件的話就是在這里選擇的替梨。這里點(diǎn)擊ok之后就已經(jīng)配置完成了。
我在配置的時候遇到過一個問題装黑,我發(fā)現(xiàn)在build.gradle文件中如果signingConfigs 標(biāo)簽在buildtype標(biāo)簽之后的話編譯會不通過然后報錯副瀑。所以如果配置完成后編譯不通過檢查一下signingConfigs 是否是在buildtype之前。