導航:首頁 > 程序命令 > apk簽名命令

apk簽名命令

發布時間:2024-06-20 15:10:29

1. 如何對android的APP進行簽名

1、在Android Studio中打開工程,點擊「Build」菜單下的「Generate Signed APK」。

2. APK重新簽名或者更換APK簽名版本

在某些特殊情況下,需要對已經生成的apk進行重新簽名,或者對已經生成的apk更換簽名版本(v1/v2/v3/v4)。如何實現呢? 可以通過命令行對已生成的apk進行處理。

apksigner.jar通常包含在Android SDK中可。路徑一般是在Android SDK/build-tools/ {SDK版本} /lib/apksigner.jar
不同的SDK版本中均有一個,取最新版本的就好了。

使用壓縮軟體打開apk,刪除包內 /META-INF/ 文件夾及文件夾內所有文件,並重新壓縮文件。

准備好簽名證書及相關密碼和需要剛處理過得apk文件
示例:

執行命令

接著輸入證書保護密碼及別名密碼。

可以從此命令的輸出中看出當前生成的apk簽名情況。

可以通過如下命令行參數進行控制
--v1-signing-enabled true
--v2-signing-enabled true
--v3-signing-enabled false

使用的簽名版本還跟apk編譯時使用的最低SDK版本有關, 即min-sdk-version的值。如果設置的值大於等於26,即使添加--v1-signing-enabled true 也無法通過上述步驟簽V1版本的簽名--僅有V2簽名(Android Studio也是)。
可以對最後生成的apk通過執行如下命令嘗試:

3. android開發 怎麼給apk文件用已有的簽名文件進行簽名,不用eclipse

給apk文件簽名主要分三步:
1、創建證書
2、簽名
3、優化(可選)
1)使用jdk的keytool工具生成簽名用的證書> keytool -genkey -v -alias CERT -keyalg RSA -keysize 2048 -validity 10000 -keystoreCERT.keystore 創建過程需要輸入一些標識信息和密碼,一些重要的參數值說明如下(根據自己的需要要進行相應的修改): CERT.keystore ---- 證書保存的文件名 CERT ---- 證書的別名 10000 ---- 10000天的有效期 2048 ---- 默認為1024 bits,Android 建議使用2048 bits或更高其他的詳細信息可以使用keytool -help查看幫助 證書生成後使用如下命令可以查看證書的信息:> keytool -list -alias CERT -keystore CERT.keystore
2)使用jdk的jarsigner工具對apk文件簽名> jarsigner -verbose -keystore CERT.keystore to_sign.apk CERT 簽名過程需要輸入證書的密碼,一些重要的參數值說明如下(根據自己的需要要進行相應的修改): CERT.keystore ---- 證書保存的文件名 CERT ---- 證書的別名 待簽名的apk文件根根目錄下如果有文件夾「META-INFO」,請先刪除(重新簽名就需要這樣做)。如果不想創建過程輸出太多信息,可以刪除「-verbose」 。上述簽名會直接覆蓋原來的文件,如果不想被覆蓋而簽名為另外的新文件 signed.akp,只需將 to_sign.apk 改為 -signedjar to_sign.apk signed.akp 即可。簽名後可以使用如下命令驗證是否簽名成功: > jarsigner -verify to_sign.apk 如果需要查看更詳細的驗證信息,可修改為:> jarsigner -certs -verbose -verify to_sign.apk
3)使用android sdk的zipalign工具優化已簽名的apk文件> zipalign -v 4 unaligned.apk aligned.apk 注意要在簽名後再zipalign。這個工具不是jdk自帶的,而是在%ANDROID_HOME%\tools\zipalign.exe。

4. 如何對Android的APP進行簽名

1.簽名的步驟

a.創建key

b.使用步驟a中產生的key對apk簽名


2.具體操作


方法一: 命令行下對apk簽名(原理)

創建key,需要用到keytool.exe (位於jdk1.6.0_24jrein目錄下),使用產生的key對apk簽名用到的是jarsigner.exe (位於jdk1.6.0_24in目錄下),把上兩個軟體所在的目錄添加到環境變數path後,打開cmd輸入

D:>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore

/*說明:-genkey 產生密鑰

-alias demo.keystore 別名 demo.keystore

-keyalg RSA 使用RSA演算法對簽名加密

-validity 40000 有效期限4000天

-keystore demo.keystore */

D:>jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore

/*說明:-verbose 輸出簽名的詳細信息

-keystore demo.keystore 密鑰庫位置

-signedjar demor_signed.apk demo.apk demo.keystore 正式簽名,三個參數中依次為簽名後產生的文件demo_signed,要簽名的文件demo.apk和密鑰庫demo.keystore.*/

注意事項:android工程的bin目錄下的demo.apk默認是已經使用debug用戶簽名的,所以不能使用上述步驟對此文件再次簽名。正確步驟應該是:在工程點擊右鍵->Anroid Tools-Export Unsigned Application Package導出的apk採用上述步驟簽名。


方法二:使用Eclipse導出帶簽名的apk

Eclipse直接能導出帶簽名的最終apk,非常方便,推薦使用,步驟如下:

第一步:導出。

第二步:創建密鑰庫keystore,輸入密鑰庫導出位置和密碼,記住密碼,下次Use existing keystore會用到。

第三步:填寫密鑰庫信息,填寫一些apk文件的密碼,使用期限和組織單位的信息。

第四步:生成帶簽名的apk文件,到此就結束了。

第五步:如果下次發布版本的時候,使用前面生成的keystore再簽名。

第六步:Next,Next,結束!


方法三:使用IntelliJ IDEA導出帶簽名的apk

方法步驟基本和Eclipse相同,大概操作路徑是:菜單Tools->Andrdoid->Export signed apk。

閱讀全文

與apk簽名命令相關的資料

熱點內容
水印相機收藏文件夾 瀏覽:570
如何懟程序員面試官 瀏覽:260
應用加密的優缺點 瀏覽:74
程序員培訓班不給錢 瀏覽:513
一堆伺服器能做什麼盈利 瀏覽:367
v20方舟編譯器推送 瀏覽:395
痛點pdf 瀏覽:916
php二維數組取部分值 瀏覽:390
重構流程壓縮時間高效管控 瀏覽:690
phpform參數詳解 瀏覽:559
此伺服器未開啟是什麼意思 瀏覽:83
python怎樣定義全局變數 瀏覽:159
加密代碼和加密編碼 瀏覽:93
將項目部署到伺服器有什麼作用 瀏覽:437
自研演算法視頻大全 瀏覽:702
寶可夢源碼下載 瀏覽:343
python怎麼沒有中文 瀏覽:437
php音樂管理 瀏覽:622
英漢百科圖解詞典pdf 瀏覽:932
php中文轉unicode編碼 瀏覽:75