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