本篇文章為大家展示了Android中怎么給應(yīng)用程序簽名,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
青川ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!
Android系統(tǒng)要求所有的程序經(jīng)過數(shù)字簽名才能安裝,如果沒有可用的數(shù)字簽名,系統(tǒng)將不許安裝運行此程序。不管是模擬器還是真實手機。因此,在設(shè)備或者是模擬器上運行調(diào)試程序之前,必須為應(yīng)用程序設(shè)置數(shù)字簽名。
所有的程序都必須簽名,沒有被簽名的程序,系統(tǒng)將不能安裝。
可使用自簽署證書簽署應(yīng)用程序,無須授權(quán)憑證。系統(tǒng)僅僅會在安裝的時候測試簽名證書的有效期,如果應(yīng)用程序的簽名是在安裝之后才到期,那么應(yīng)用程序仍然可以正常啟用??梢允褂脴?biāo)準(zhǔn)工具-Keytool and Jarsigner-生成密鑰,來簽名應(yīng)用程序的.apk文件。
Android SDK 工具可以在調(diào)試時給應(yīng)用程序簽名。ADT插件和Ant編譯工具都提供了兩種簽名模式-debug模式和release模式
debug模式下,編譯工具使用JDK中的通用程序Keytool通過已知方法和密碼創(chuàng)建秘鎖和密鑰。每次編譯的時候,工具使用debug密鑰簽名應(yīng)用程序的.apk文件。因為密碼是已知的,工具
不需要在每次編譯的時候提示輸入密鎖和密鑰。
當(dāng)應(yīng)用程序調(diào)試完畢準(zhǔn)備要發(fā)布release版本時,可以在release模式下編譯。release模式下,編譯工具不會將.apk文件簽名。需要自己用Keytool生成密鑰和密鎖,再用JDK中的Jarsigner工具給.apk文件簽名。
簽名基本設(shè)置
首先設(shè)置JAVA_HOME環(huán)境變量,告訴SDK如何找到Keytool,或者可以在Windows 系統(tǒng)環(huán)境變量PATH變量中添加Keytool的JDK路徑。
在發(fā)布release版本時,從Package面版上按選中你的project,按鼠標(biāo)右鍵,依次選擇Android Tools、Export Application Package?;蛘呖梢渣c擊Manifest Editor,overview 頁面上的“Exporting the unsigned .apk”連接 ,導(dǎo)出未簽名apk文件。保存.apk文件后,用Jarsigner及自己的密鑰給apk文件簽名,如果沒有密鑰, 可以用Keystore創(chuàng)建密鑰和密鎖。如果已經(jīng)有一個密鑰了,如公共密鑰,就可以給.apk文件簽名了。
也可以把上面這個完整的步驟寫成一個bat文件,這樣需要簽名的時候只要運行這個bat就可以了。下面給出一個完整的bat文件示例:
@Rem android簽名程序 //注釋指令
@Rem echo是顯示指令 格式:echo [{on|off}] [message]
@echo **********************************************************
@Rem 文件是否存在命令格式:if exist 路徑+文件名 命令
@if exist d:sign/MyFirstApp.keystore goto sign
@echo 創(chuàng)建簽名文件MyFirstApp.keystore
@Rem keytool命令格式:-genkey產(chǎn)生簽名 -alias別名 -keyalg加密算法 -validity有效天數(shù) -keystore生產(chǎn)簽名文件名稱
keytool -genkey -alias MyFirstApp.keystore -keyalg RSA -validity 40000 -keystore MyFirstApp.keystore
@echo 開始簽名:
@Rem jarsigner命令格式:-verbose輸出詳細信息 -keystore密鑰庫位置 -signedjar要生成的文件 要簽名的文件 密鑰庫文件
jarsigner -verbose -keystore MyFirstApp.keystore -signedjar MyFirstApp_signed.apk MyFirstApp.apk MyFirstApp.keystore
@goto over
:sign
@echo 開始簽名:
jarsigner -verbose -keystore MyFirstApp.keystore -signedjar MyFirstApp_signed.apk MyFirstApp.apk MyFirstApp.keystore
:over
@echo ********************MyFirstApp.apk 簽名完成***********************
pause
以上是一個給應(yīng)用簽名的完整bat文件,在運行這個bat文件時,還需要按照屏幕提示的步驟輸入一些必要信息,***生成一個簽名后的文件是:MyFirstApp_signed.apk。
簽名完成以后***再把這個文件壓縮一下,使用Android SDK安裝路徑下tools文件夾里的zipalign進行壓縮,以剛才這個文件為例,也可以寫成一個bat文件,示例如下:
D:\soft\android-sdk-windows\tools\zipalign -f -v 4 MyFirstApp_signed.apk MyFirstApp_zip.apk D:\soft\android-sdk-windows\tools\zipalign -c -v 4 MyFirstApp_zip.apk
pause<
上面的D:\soft\android-sdk-windows用你的實際Android SDK安裝路徑代替。
上述內(nèi)容就是Android中怎么給應(yīng)用程序簽名,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
當(dāng)前名稱:Android中怎么給應(yīng)用程序簽名
本文地址:http://muchs.cn/article2/gjscic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗、動態(tài)網(wǎng)站、關(guān)鍵詞優(yōu)化、網(wǎng)站改版、網(wǎng)站導(dǎo)航、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)