真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Android數(shù)字簽名的創(chuàng)建

Android的數(shù)字簽名是保證在同一個(gè)Android系統(tǒng)中,相同包名不同簽名的apk無(wú)法覆蓋安裝。

我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、青岡ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的青岡網(wǎng)站制作公司

這么做的目的,是為了證明開(kāi)發(fā)者的身份和防止抵賴。

假設(shè)有用戶先裝了一個(gè)正版App,而后下載了一個(gè)相同包名的盜版App,如果可以覆蓋安裝,則不能使用戶得知這是個(gè)盜版(或者說(shuō)與原來(lái)App不同)的App。

還有就是這個(gè)App若有什么后門病毒之類的,持有數(shù)字簽名的人就無(wú)法抵賴。

創(chuàng)建Android數(shù)字簽名的方式如下:

(1)在項(xiàng)目上右鍵,選擇Android Tools——>Export Signed Application Package

Android數(shù)字簽名的創(chuàng)建

(2)自動(dòng)填入工程名,不允許修改和含有中文,需要修改的地方在上一步操作前先修改

Android數(shù)字簽名的創(chuàng)建

(3)輸入第一重密碼,若之前有了,最好拿之前的,這里我新建了一個(gè),新建時(shí)要指定簽名文件的導(dǎo)出位置

Android數(shù)字簽名的創(chuàng)建

(4)輸入信息(別名,第二重密碼等)第二重密碼最好與第一重不相同

有效期選項(xiàng),谷歌官方建議是到2033年以后,但少于亦可

Android數(shù)字簽名的創(chuàng)建

(5)設(shè)置導(dǎo)出APK的位置

Android數(shù)字簽名的創(chuàng)建

(6)至此,大功告成。下面測(cè)試下,拿導(dǎo)出的簽名后的APK和bin目錄里的APK做個(gè)實(shí)驗(yàn)

Android數(shù)字簽名的創(chuàng)建

這個(gè)是拿bin目錄中的APK文件安裝到模擬器

直接安裝,告訴我們系統(tǒng)中已經(jīng)存在這個(gè)apk了

重新安裝,顯示成功。

(7)使用導(dǎo)出的已簽名的APK

Android數(shù)字簽名的創(chuàng)建

直接安裝,還是顯示已經(jīng)存在

從新安裝,顯示解析失敗,證書(shū)矛盾

這樣就驗(yàn)證了之前提到的數(shù)字簽名的作用了。

以下內(nèi)容摘自http://www.cnblogs.com/feisky/archive/2010/01/17/1650076.html

在Android系統(tǒng)中,所有安裝到系統(tǒng)的應(yīng)用程序都必有一個(gè)數(shù)字證書(shū),此數(shù)字證書(shū)用于標(biāo)識(shí)應(yīng)用程序的作者和在應(yīng)用程序之間建立信任關(guān)系,如果一個(gè)permission的protectionLevel為signature,那么就只有那些跟該permission所在的程序擁有同一個(gè)數(shù)字證書(shū)的應(yīng)用程序才能取得該權(quán)限。Android使用Java的數(shù)字證書(shū)相關(guān)的機(jī)制來(lái)給apk加蓋數(shù)字證書(shū),要理解android的數(shù)字證書(shū),需要先了解以下數(shù)字證書(shū)的概念和java的數(shù)字證書(shū)機(jī)制。Android系統(tǒng)要求每一個(gè)安裝進(jìn)系統(tǒng)的應(yīng)用程序都是經(jīng)過(guò)數(shù)字證書(shū)簽名的,數(shù)字證書(shū)的私鑰則保存在程序開(kāi)發(fā)者的手中。Android將數(shù)字證書(shū)用來(lái)標(biāo)識(shí)應(yīng)用程序的作者和在應(yīng)用程序之間建立信任關(guān)系,不是用來(lái)決定最終用戶可以安裝哪些應(yīng)用程序。這個(gè)數(shù)字證書(shū)并不需要權(quán)威的數(shù)字證書(shū)簽名機(jī)構(gòu)認(rèn)證,它只是用來(lái)讓應(yīng)用程序包自我認(rèn)證的。

同一個(gè)開(kāi)發(fā)者的多個(gè)程序盡可能使用同一個(gè)數(shù)字證書(shū),這可以帶來(lái)以下好處。

(1)有利于程序升級(jí),當(dāng)新版程序和舊版程序的數(shù)字證書(shū)相同時(shí),Android系統(tǒng)才會(huì)認(rèn)為這兩個(gè)程序是同一個(gè)程序的不同版本。如果新版程序和舊版程序的數(shù)字證書(shū)不相同,則Android系統(tǒng)認(rèn)為他們是不同的程序,并產(chǎn)生沖突,會(huì)要求新程序更改包名。

(Roadley:這點(diǎn)至關(guān)重要)

(2)有利于程序的模塊化設(shè)計(jì)和開(kāi)發(fā)。Android系統(tǒng)允許擁有同一個(gè)數(shù)字簽名的程序運(yùn)行在一個(gè)進(jìn)程中,Android程序會(huì)將他們視為同一個(gè)程序。所以開(kāi)發(fā)者可以將自己的程序分模塊開(kāi)發(fā),而用戶只需要在需要的時(shí)候下載適當(dāng)?shù)哪K。

(3)可以通過(guò)權(quán)限(permission)的方式在多個(gè)程序間共享數(shù)據(jù)和代碼。Android提供了基于數(shù)字證書(shū)的權(quán)限賦予機(jī)制,應(yīng)用程序可以和其他的程序共享概功能或者數(shù)據(jù)給那那些與自己擁有相同數(shù)字證書(shū)的程序。如果某個(gè)權(quán)限(permission)的protectionLevel是signature,則這個(gè)權(quán)限就只能授予那些跟該權(quán)限所在的包擁有同一個(gè)數(shù)字證書(shū)的程序。

在簽名時(shí),需要考慮數(shù)字證書(shū)的有效期

(1)數(shù)字證書(shū)的有效期要包含程序的預(yù)計(jì)生命周期,一旦數(shù)字證書(shū)失效,持有改數(shù)字證書(shū)的程序?qū)⒉荒苷I?jí)。

(2)如果多個(gè)程序使用同一個(gè)數(shù)字證書(shū),則該數(shù)字證書(shū)的有效期要包含所有程序的預(yù)計(jì)生命周期。

(3)Android Market強(qiáng)制要求所有應(yīng)用程序數(shù)字證書(shū)的有效期要持續(xù)到2033年10月22日以后。

(Roadley:應(yīng)該是google play上面的應(yīng)用程序需要又掀起到2033年以后,導(dǎo)出簽名包時(shí)并無(wú)限制,只有警告)

Android數(shù)字證書(shū)包含以下幾個(gè)要點(diǎn):

(1)所有的應(yīng)用程序都必須有數(shù)字證書(shū),Android系統(tǒng)不會(huì)安裝一個(gè)沒(méi)有數(shù)字證書(shū)的應(yīng)用程序

(Roadley:我們平時(shí)編程時(shí)可以直接運(yùn)行在模擬器上是因?yàn)閑clipse會(huì)自動(dòng)幫我們簽名)

(2)Android程序包使用的數(shù)字證書(shū)可以是自簽名的,不需要一個(gè)權(quán)威的數(shù)字證書(shū)機(jī)構(gòu)簽名認(rèn)證

(3)如果要正式發(fā)布一個(gè)Android ,必須使用一個(gè)合適的私鑰生成的數(shù)字證書(shū)來(lái)給程序簽名,而不能使用adt插件或者ant工具生成的調(diào)試證書(shū)來(lái)發(fā)布。

(Roadley:eclipse生成的私鑰并不是固定的,所以使用它來(lái)簽名并不保險(xiǎn))

(4)數(shù)字證書(shū)都是有有效期的,Android只是在應(yīng)用程序安裝的時(shí)候才會(huì)檢查證書(shū)的有效期。如果程序已經(jīng)安裝在系統(tǒng)中,即使證書(shū)過(guò)期也不會(huì)影響程序的正常功能。

(5)Android使用標(biāo)準(zhǔn)的java工具 Keytool and Jarsigner來(lái)生成數(shù)字證書(shū),并給應(yīng)用程序包簽名。

(6)使用zipalign優(yōu)化程序。


新聞名稱:Android數(shù)字簽名的創(chuàng)建
網(wǎng)站鏈接:http://weahome.cn/article/jdiiis.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部