Android程序apk編譯、打包、簽名

 一直想搞清楚Android apk是怎麼編譯打包並且簽名發佈Application的??今天花了幾個小時,並在網上查資料,終於把apk編譯簽名打包整個流程弄清楚了。

PS:因爲android程序一共有三種方式完成編譯打包任務,參看連接:Android編譯,打包、簽名詳細教程 我採用的是在Eclipse+ADT方式下,並在cmd中編寫簽名工作的,希望能幫助大家;

 

1.Eclipse下打包unsigned apk

在Eclipse,選中對應的Project,右擊選擇Android Tools——Export unsigned application package

2. Eclipse下打包signed apk

在Eclipse,選中對應的Project,右擊選擇Android Tools——Export signed application package

Next

選擇已有的簽名文件keystore,注意要知道密碼;如果沒有keystore,在練習中可以自己試着編一個keystore,參看apk簽名設置文本 X:\csdn博客文章\apk打包練習

創建簽名文件mySign.keystore步驟:PS:keystore是由jdk自帶的工具keytool生成的。

1.    進入cmd命令行,cd到jdk/bin目錄下;

2.    然後輸入:

命令:keytool -genkey -alias asaiAndroid.keystore -keyalg RSA -validity 20000 -keystore asaiAndroid.keystore  生成的mySign.keystore就在jdk/bin目錄中。

解釋:-alias 後面跟的是別名這裏是 asaiAndroid.store

      -keyalg 是加密方式這裏是RSA

      -validity 是有效期 這裏是20000

      -keystore 就是要生成的keystore的名稱 這裏是asiAndroid.keystore

然後按回車鍵 ,按回車後首先會提示你輸入的密碼:這個在簽名時要用的,要記住,然後會再確認你的密碼。 之後會依次叫你輸入姓名、組織單位、組織名稱、城市區域、省份名稱、國家代碼

設置完信息,最後再次輸入原來的密碼進行確認,再輸入yes/no確定完成簽名,並生成mySign.keystore簽名文件;

附:cmd下查找文件:

開始爲unsigned.apk簽名 步驟:PS:unsigned.apk mySigned.keystore必須在同個文件夾下,因爲沒有配置keytool的環境變量,所以暫時需要的文件均放在jdk/bin文件目錄下;使用jarsigner

命令:jarsigner -verbose -keystore mySign.keystore-signedjar AndroidTest_signed.apk AndroidTest.apk mySign.keystore生成的Lotteryonline_signed.apk就在jdk/bin目錄中

解釋:-keystore: keystore的名稱

      AndroidTest_signed.apk: 簽名後的APK

      AndroidTest.apk: 簽名前的APK

然後按回車:會要求輸入剛纔設置的密碼,輸入後按回車就開始簽名了。

PS:第一次簽名失敗的原因:AndroidTest.apk沒有和mySign.keystore同在jdk/bin目錄中;

 後記:

Apk包結構簡介:轉 http://www.eoeandroid.com/forum.php?mod=viewthread&tid=100000

 

 追記:

keytool -genkey命令解釋:


 


cmd下啓動android emulator:

前提:配置android-sdk tools環境變量

命令:android avd (任意目錄)


發佈了28 篇原創文章 · 獲贊 22 · 訪問量 96萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章