程序使用keystore的好處
(1)有利于程序升級
當(dāng)新版程序和舊版程序的數(shù)字證書相同時(shí)合呐,Android系統(tǒng)才會認(rèn)為這兩個(gè)程序是同一個(gè)程序的不同版本勾栗。如果新版程序和舊版程序的數(shù)字證書不相同精盅,則Android系統(tǒng)認(rèn)為他們是不同的程序评抚,并產(chǎn)生沖突胸蛛,會要求新程序更改包名昏名。
(2)有利于程序的模塊化設(shè)計(jì)和開發(fā)蝎土。
Android系統(tǒng)允許擁有同一個(gè)數(shù)字簽名的程序運(yùn)行在一個(gè)進(jìn)程中视哑,Android程序會將他們視為同一個(gè)程序。所以開發(fā)者可以將自己的程序分模塊開發(fā)誊涯,而用戶只需要在需要的時(shí)候下載適當(dāng)?shù)哪K挡毅。
(3)可以通過權(quán)限(permission)的方式在多個(gè)程序間共享數(shù)據(jù)和代碼。
Android提供了基于數(shù)字證書的權(quán)限賦予機(jī)制暴构,應(yīng)用程序可以和其他的程序共享概功能或者數(shù)據(jù)給那那些與自己擁有相同數(shù)字證書的程序跪呈。如果某個(gè)權(quán)限(permission)的protectionLevel是signature,則這個(gè)權(quán)限就只能授予那些跟該權(quán)限所在的包擁有同一個(gè)數(shù)字證書的程序取逾。
keystore的兩種模式
調(diào)試模式(debug mode)和發(fā)布模式(release mode)
(1)調(diào)試模式(debug mode):在調(diào)試模式下耗绿, Android Studio會自動的使用debug密鑰為應(yīng)用程序簽名,因此我們可以直接運(yùn)行程序砾隅。
(2)發(fā)布模式(release mode):當(dāng)要發(fā)布程序時(shí)误阻,開發(fā)者就需要使用自己的數(shù)字證書給apk包簽名。
Android Studio生成keystore
1.點(diǎn)擊Build ,在下拉框中選擇 "Generate Signed APK"
2.選擇 "Create new"
3.按照里面的內(nèi)容填寫即可
4.選擇何種模式的簽名
在這個(gè)窗體中可以選擇簽名的模式,debug和release 模式堕绩。完成點(diǎn)擊finish
在這篇文章中先介紹這些策幼,下一篇講如何在Android Studio中自動簽名打包APK。