Android 項(xiàng)目正式簽名打包教程分享
大家在開發(fā)安卓應(yīng)用的時(shí)候,在調(diào)試階段通常都是通過 run 的方式發(fā)布到模擬器或者真機(jī)上,我們知道 android 應(yīng)用打包后的后綴名是 .apk 文件。.apk 文件是一種壓縮包,類似 .zip 文件,我們可以通過強(qiáng)制更改它的后綴為 .zip 來解壓 apk 獲取包里的內(nèi)容,以這種方式可以驗(yàn)證它其實(shí)就是一個(gè)壓縮包。
在 run 的時(shí)候就是將我們所寫的代碼打包為 apk 文件,打包就是根據(jù)簽名、標(biāo)識(shí)等信息生成的一個(gè)安裝包,我們在包里嵌入作者的信息、公司信息等,可以具有唯一的辨識(shí)行為,同時(shí)也可以維護(hù)版權(quán)利益等。
提到簽名,我們都知道每本書都是有作者在書中進(jìn)行簽名的,而 app 也一樣,我們要證明這個(gè)軟件是由我們團(tuán)隊(duì)制作的話,也需要進(jìn)行簽名,所以我們在打包的時(shí)候通常會(huì)嵌入自己或團(tuán)隊(duì)的信息。
默認(rèn)簽名
上面說到簽名可以讓我們的軟件有一個(gè)著作權(quán),而實(shí)際情況中,都是需要簽名過的 apk 文件才可以成功跑在模擬器或者真機(jī)中,這是一個(gè)必須強(qiáng)制簽名的原因。而另一個(gè)原因:如果有同一個(gè)包名的兩個(gè)不同的安裝包,你已經(jīng)安裝了一個(gè),而又想將另一個(gè)安裝上時(shí),會(huì)提示你所安裝的應(yīng)用簽名不一致的問題,然后你只能卸載其中的一個(gè),才可以將另一個(gè)安裝上。
這樣會(huì)導(dǎo)致一個(gè)問題,如果是一個(gè)病毒軟件偽裝成其他應(yīng)用的話,你可能會(huì)以為是升級版本,然后將其安裝上,那可能會(huì)造成嚴(yán)重后果。
接著說我們運(yùn)行 app 的時(shí)候,而你會(huì)發(fā)現(xiàn),我們在 run 的時(shí)候并沒有給予簽名啊,為什么它還可以成功的運(yùn)行呢?
其實(shí),這是因?yàn)槲覀冊?run 的時(shí)候,android studio 默認(rèn)給其添加了一個(gè)系統(tǒng)的簽名,我們來看一下這個(gè)默認(rèn)的簽名工具:debug.keystore ,這個(gè)工具位于(windows系統(tǒng)),在我的 manjaro 系統(tǒng)上我還沒找到它在哪里,所以我就貼了一張圖來示意一下,我們只要知道 run 的時(shí)候默認(rèn)的使用這個(gè)文件來進(jìn)行簽名的。
一、缺點(diǎn)
使用系統(tǒng)默認(rèn)的簽名是不可取的,因?yàn)檫@個(gè)簽名是根據(jù)不同的電腦來設(shè)置的參數(shù),如果你用公司的電腦上簽名的 apk 文件進(jìn)行安裝,然后回到家里的電腦上繼續(xù)寫同一個(gè)項(xiàng)目,然后簽名安裝就會(huì)發(fā)現(xiàn)安裝不上了,這就是因?yàn)椴煌娔X的簽名文件信息都是不同的,所以真正的商用軟件是不可以采取這種方式來簽名的。
既然,我們不可以通過系統(tǒng)默認(rèn)簽名來發(fā)布軟件,所以 android studio 為我們提供了一種手動(dòng)打包簽名的方式,下面我們來學(xué)習(xí)一下如何使用自己的簽名來打包。
二、手動(dòng)簽名打包
android studio 為我們提供了兩種打包簽名的方式,一種是圖形化的界面,一種是命令的方式。我們來簡單學(xué)習(xí)一下圖形化的界面操作,這個(gè)比較簡單,適用初學(xué)者。
首先我來看如何操作:
這樣我們就可以打開簽名的圖形界面了,然后通過 create 創(chuàng)建一個(gè)新的簽名文件,這里注意一下,我們必須將創(chuàng)建成功的簽名文件保存起來,不能將其丟失(如下:.jks文件)
丟失的后果就是要重新簽名,然后你發(fā)布在商店中的應(yīng)用也要重新計(jì)算已有的排行榜,還有當(dāng)然會(huì)遇到簽名不一致的問題了。你在版本升級的時(shí)候也需要使用這個(gè)簽名文件重新打包,所以斷不可丟失。
這里填寫的是一些基本信息,我就測試性的隨便填寫,一般都是填寫公司相關(guān)的真實(shí)性信息。點(diǎn)擊下一步
這里可以選擇 debug\release 版本,一個(gè)代表測試,一個(gè)是發(fā)布版。然后完成就可以到你指定的文件夾中去查看 apk 文件是否生成了。當(dāng)然,as也會(huì)提示成功或者失敗情況的,這就是我們剛剛簽名打包生成的 apk 安裝包文件了。如果你要將這個(gè)文件進(jìn)行安裝的話,就必須得先卸載 run 發(fā)布的應(yīng)用才可以成功安裝。
這種打包的方式不夠適用,適合初學(xué)者學(xué)習(xí)。
至于為什么,推薦看這篇關(guān)于多渠道打包的文章:Android 多渠道打包流程
以上這篇Android 項(xiàng)目正式簽名打包教程分享就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Android基于TextView實(shí)現(xiàn)的跑馬燈效果實(shí)例
這篇文章主要介紹了Android基于TextView實(shí)現(xiàn)的跑馬燈效果,以完整實(shí)例形式分析了Android使用TextView通過屬性設(shè)置及功能代碼實(shí)現(xiàn)跑馬燈效果的相關(guān)技巧,需要的朋友可以參考下2016-02-02Android上實(shí)現(xiàn)easyconfig(airkiss)方法
本篇文章主要給大家講解了在Android系統(tǒng)上實(shí)現(xiàn)easyconfig(airkiss)的方法,有這方面需要的朋友參考學(xué)習(xí)下吧。2018-01-01Android的ListView多選刪除操作實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了Android的ListView多選刪除操作實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05Android編程之電池電量信息更新的方法(基于BatteryService實(shí)現(xiàn))
這篇文章主要介紹了Android編程之電池電量信息更新的方法,主要基于BatteryService實(shí)現(xiàn)該功能,以實(shí)例形式分析了Android獲取電池電量的具體步驟與實(shí)現(xiàn)技巧,需要的朋友可以參考下2015-11-11Android Style.xml的應(yīng)用詳解及代碼實(shí)現(xiàn)
這篇文章主要介紹了Android Style.xml的應(yīng)用詳解及代碼實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2016-10-10Android補(bǔ)間動(dòng)畫的實(shí)現(xiàn)示例
本文主要介紹了Android補(bǔ)間動(dòng)畫的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04Flutter Widget開發(fā)Shortcuts快捷鍵實(shí)例
這篇文章主要為大家介紹了Flutter Widget開發(fā)Shortcuts快捷鍵實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12