1. 程式人生 > >在eclipse中將android工程打包成apk 獲取正式版本 Android 打包簽名 從生成keystore到完成簽名

在eclipse中將android工程打包成apk 獲取正式版本 Android 打包簽名 從生成keystore到完成簽名

做完一個Android專案之後,如何才能把專案釋出到Internet上供別人使用呢?我們需要將自己的程式打包成Android安裝包檔案--APK(Android Package),其後綴名為".apk"。將APK檔案直接上傳到Android模擬器或Android手機中執行即可進行安裝。Android系統要求具有其開發者簽名的私人金鑰的應用程式才能夠被安裝。生成數字簽名以及打包專案成APK都可以採用命令列的方式,但是通過Eclipse中的嚮導我們會更加方便地完成整個流程,打包釋出的過程非常簡單。下面以前面開發的"Hello World"為例,演示如何生成APK。

Eclipse Android專案

開發完成以後就要將android專案檔案打包成apk檔案,並最終下載到真機上執行 。下面是個人打包apk的過程,主要是以圖文形式記錄一下 。

  其實最懶的辦法,就是直接到eclipse專案的bin目錄找到檔案,那是eclipse系統自動生成的apk檔案 。

  1、生成keystore

  按照下面的命令列在C:\ProgramFiles\Java\jdk1.6.0_10\bin>目錄下,輸入

   keytool -genkey -alias android.keystore -keyalg RSA -validity 100000 -keystore android.keystore

  引數意義:-validity主要是證書的有效期,寫100000天;空格,退格鍵都算密碼 。

  命令執行後會在C:\ProgramFiles\Java\jdk1.6.0_10\bin>目錄下生成android.keystore檔案 。如圖-1

  圖-1命令列下生成android.keystore

dos裡面的內容

(C:\ProgramFiles\Java\jdk1.6.0_10\bin>keytool-genkey-aliasandroid.keystore-keyalgRSA-validity100000-keystoreandroid.keystore

輸入keystore密碼: android
您的名字與姓氏是什麼?
[Unknown]: sxl
您的組織單位名稱是什麼?
[Unknown]: xs
您的組織名稱是什麼?
[Unknown]: xs
您所在的城市或區域名稱是什麼?
[Unknown]: null
您所在的州或省份名稱是什麼?
[Unknown]: null
該單位的兩字母國家程式碼是什麼
[Unknown]: null
CN=sxl, OU=xs, O=xuesheng, L=null, ST=null, C=null 正確嗎?
[否] y
輸入<android.keystore>的主密碼
(如果和keystore密碼相同,按回車):)

2、Eclipse Android生成apk檔案

 右鍵單擊專案名稱,選擇"Android Tools",再選擇"Export Signed Application Package…",如下圖所示。

 

進入左圖所示頁面,單擊"Next>"按鈕,進入如右圖所示視窗。
 

其中,Location為證書庫將要存放的位置,Password是證書庫的密碼。

打包程式時,系統要求使用數字證書。如果沒有數字證書,我們選擇"Create new keystore"新建立一個證書庫,單擊"Browse…"按鈕選擇證書庫將要儲存的位置並填入資訊,如左圖所示。單擊"Next>"按鈕,如右圖所示。

 

其中,Alias是該證書的名字;password是該證書的密碼;Validity是指定證書有效年份。

如果已經擁有一個證書,那麼可以選擇"Use existing keystore",之後直接定位到證書庫的位置並填入密碼,如左圖所示,接下來填入密碼,單擊"Next>"按鈕,如右圖所示。

 
單擊"Browse…"按鈕,選擇檔案儲存的位置,如下圖所示。
 

"Destination APK file "指定APK儲存的位置。單擊"Finish"按鈕,打包完成。

進入"D:\My Document",會看到生成的HelloWorld.apk以及sharpandroid證書庫。

我們可以把HelloWorld.apk檔案釋出到Internet上,也可以將該檔案釋出到Google的Android Market中,別人就可以下載它,並安裝到手機上去。