)Android應用程式打包簽名

來源:互聯網
上載者:User

首先,我們需要一個keystore,當然已經有了的話就不用這一步了: 
cmd下: 
進入到jdk的bin目錄,這樣的話,android.keystore檔案就會產生在這個目錄下,簽名的時候我們需要這個檔案 
C:\Program Files\Java\jdk1.6.0_10\bin>keytool -genkey -alias android.keystore -keyalg RSA -validity 20000 -keystore android.keystore 
輸入keystore密碼: 
再次輸入新密碼: 
您的名字與姓氏是什嗎? 
  [Unknown]:  qiaoling您的組織單位名稱是什嗎? 
  [Unknown]:  www.chinaandroid.com 
您的組織名稱是什嗎? 
  [Unknown]:  www.chinaandroid.com 
您所在的城市或地區名稱是什嗎? 
  [Unknown]:  haidian 
您所在的州或省份名稱是什嗎? 
  [Unknown]:  BJ 
該單位的兩字母國家代碼是什麼 
  [Unknown]:  86 
CN=qiaoling, OU=www.chinaandroid.com, O=www.chinaandroid.com, L=haidian, ST=BJ, C=86 正確嗎? 
  [否]:  Y 
輸入<android.keystore>的主密碼(如果和 keystore 密碼相同,按斷行符號): 

其中參數-validity為認證有效天數,這裡我們寫的大些10000天。還有在輸入密碼時沒有回顯(儘管輸就是啦) 並且 退格,tab等都屬於密碼內容,這個密碼在給.apk檔案簽名的時候需要. 

然後簽名: 
Eclipse中,右擊需要簽名的工程-->android tools-->export signed application package... 
出現下面對話方塊,選擇需要簽名的工程 

next,選擇上面產生的android.keystore檔案位置和設定的密碼 

next 

next,選擇簽名組建檔案的位置和名稱 

搞掂

另一種密鑰方式:

http://www.iteye.com/topic/343949

keytool用法 :

-certreq     [-v] [-protected]
             [-alias <別名>] [-sigalg <sigalg>]
             [-file <csr_file>] [-keypass <密鑰庫口令>]
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-changealias [-v] [-protected] -alias <別名> -destalias <目標別名>
             [-keypass <密鑰庫口令>]
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-delete      [-v] [-protected] -alias <別名>
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-exportcert  [-v] [-rfc] [-protected]
             [-alias <別名>] [-file <認證檔案>]
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-genkeypair  [-v] [-protected]
             [-alias <別名>]
             [-keyalg <keyalg>] [-keysize <密鑰大小>]
             [-sigalg <sigalg>] [-dname <dname>]
             [-validity <valDays>] [-keypass <密鑰庫口令>]
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-genseckey   [-v] [-protected]
             [-alias <別名>] [-keypass <密鑰庫口令>]
             [-keyalg <keyalg>] [-keysize <密鑰大小>]
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-help

-importcert  [-v] [-noprompt] [-trustcacerts] [-protected]
             [-alias <別名>]
             [-file <認證檔案>] [-keypass <密鑰庫口令>]
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-importkeystore [-v]
             [-srckeystore <源密鑰庫>] [-destkeystore <目標密鑰庫>]
             [-srcstoretype <源儲存類型>] [-deststoretype <目標儲存類型>]
             [-srcstorepass <源存放庫口令>] [-deststorepass <目標存放庫口令>]
             [-srcprotected] [-destprotected]
             [-srcprovidername <源提供方名稱>]
             [-destprovidername <目標提供方名稱>]
             [-srcalias <源別名> [-destalias <目標別名>]
               [-srckeypass <源密鑰庫口令>] [-destkeypass <目標密鑰庫口令>]]
             [-noprompt]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-keypasswd   [-v] [-alias <別名>]
             [-keypass <舊密鑰庫口令>] [-new <新密鑰庫口令>]
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-list        [-v | -rfc] [-protected]
             [-alias <別名>]
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

-printcert   [-v] [-file <認證檔案>]

-storepasswd [-v] [-new <新存放庫口令>]
             [-keystore <密鑰庫>] [-storepass <存放庫口令>]
             [-storetype <儲存類型>] [-providername <名稱>]
             [-providerclass <提供方類名稱> [-providerarg <參數>]] ...
             [-providerpath <路徑列表>]

jarsigner用法 : [選項] jar 檔案別名
       jarsigner -verify [選項] jar 檔案

[-keystore <url>]           密鑰庫位置
[-storepass <口令>]         用於密鑰庫完整性的口令
[-storetype <類型>]         密鑰庫類型
[-keypass <口令>]           專用密鑰的口令(如果不同)
[-sigfile <檔案>]           .SF/.DSA 檔案的名稱
[-signedjar <檔案>]         已簽名的 JAR 檔案的名稱
[-digestalg <演算法>]    摘要演算法的名稱
[-sigalg <演算法>]       簽名演算法的名稱
[-verify]                   驗證已簽名的 JAR 檔案
[-verbose]                  簽名/驗證時輸出詳細資料
[-certs]                    輸出詳細資料和驗證時顯示認證
[-tsa <url>]                時間戳記機構的位置
[-tsacert <別名>]           時間戳記機構的公用密鑰認證
[-altsigner <類>]           替代的簽名機制的類名
[-altsignerpath <路徑列表>] 替代的簽名機制的位置
[-internalsf]               在簽名塊內包含 .SF 檔案
[-sectionsonly]             不計算整個清單的散列
[-protected]                密鑰庫已保護驗證路徑
[-providerName <名稱>]      提供者名稱
[-providerClass <類>        Data Encryption Service提供者的名稱
[-providerArg <參數>]] ... 主類檔案和建構函式參數

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.