啟動eclipse,創建好Android工程
在打包簽名Android工程的過程中,需要先選取目標工程,在工程上右鍵點擊,然後選擇【Android tools】-」【Export Signed Application Package..】。
進入簽章打包管理窗口,第一步確認工程名稱,點選進入下一步
選擇keystore(也就是簽章檔),您可以選擇使用已經定義好的keystore,或是建立新的簽章檔;
在另一篇經驗中,筆者將詳細介紹如何新建keystore,而在這裡,我們將暫時使用事先定義好的簽名檔。
在選擇keystore時,首先要進入存放目錄,找到並選取keystore文件,然後輸入密碼,最後點選下一步進行操作。
在安裝eclipse adt時,預設會自帶一個debug.keystore文件,它的密碼是:android。
如果是使用自訂的簽章文件,那需要輸入對應定義的密碼即可
選擇一個key來進行加密,密碼同上;
當然讀者也可以自訂一個新的key
#選擇APK存放目錄後,點選【完成】,eclipse將自動進行打包,打包完成後,您可以在先前設定的存放目錄中找到已簽署的APK檔案。
如果你只是想了解如何簽署和下載簽章工具,請直接查看「如何使用SignApk.jar為apk或zip檔進行簽章」部分。如果你希望創建自己的證書,請從頭開始閱讀。
準備知識:
當您要發布一個軟體或自製的ROM時,您需要使用一個已經使用私鑰的憑證來為.apk或.zip檔案進行簽署。 Android系統使用憑證來辨識軟體作者和軟體之間所建立的認證關係。建立憑證最常見的方式是使用keytool工具,然後使用jarsigner工具進行簽署。然而,本教學將提供一個對於絕大多數人來說更簡單的方法,那就是使用一個名為SignApk.jar的工具。
SignApk.jar是一個已經包含在Android平台原始碼包中的工具,你可以在本帖的附件中下載。如果你想使用SignApk.jar,首先需要建立一個帶有對應憑證/公鑰的私鑰。你可以使用Openssl來建立私鑰/公鑰對。在Unix/Linux系統中,使用Openssl相對來說比較容易。對於Windows用戶,你可以在本貼文的配件或透過此連結下載Windows版本的Openssl工具。
在Windows版本中,你可以使用OpenSSL來建立私鑰/公鑰對(也就是憑證檔案)。以下是建立過程的簡要步驟: 步驟1:下載和安裝OpenSSL 首先,你需要從OpenSSL的官方網站(https://www.openssl.org/)下載並安裝合適版本的OpenSSL。 步驟2:開啟命令提示符 在Windows中,按下Win R鍵,輸入"cmd"並按下回車鍵,即可開啟命令提示字元視窗。 步驟3:導航
下載附件中的openssl-0.9.8k_WIN32.zip
將下載到的壓縮封包解壓縮到你電腦上的一個適當的位置,例如C:\OpenSSL。
在OpenSSL\bin資料夾下,依照下列順序輸入指令(請使用CMD命令列工具)。在第二步中,你需要輸入一些信息,具體操作請見附圖。
1、openssl genrsa -out key.pem 1024
2. 開啟命令提示字元窗口,輸入以下命令:openssl req -new -key key.pem -config C:\OpenSSL\openssl.cnf -out request.pem。
3、執行下列指令產生憑證:openssl x509 -req -days 9999 -in request.pem -signkey key.pem -out certificate.pem
執行以下指令可以將PEM格式的私密金鑰轉換為DER格式的私鑰: `openssl pkcs8 -topk8 -outform DER -in key.pem -inform PEM -out key.pk8 -nocrypt` 該指令使用OpenSSL工具,將輸入檔案`key.pem`中的PEM格式的私密金鑰轉換為DER格式,並將轉換後的私鑰儲存為`key.pk8`檔案。使用`-topk8`參數指定產生PKCS#8格式的私鑰,`-outform DER`參數指定輸出為DER格式,`-in`和`-inform PEM`參數指定輸入檔為PEM格式,`-out`參數指定輸出檔名為`key.pk8`,`-nocrypt`參數表示
大星星提示:如果你的recovery不支援簽章校驗切換功能,那麼使用自己產生的憑證檔案給ROM簽章時可能會遇到簽章校驗失敗的提示。這是因為目前幾乎所有的第三方recovery中所攜帶的私鑰都是testkey。請注意,附件中的android.zip檔案已更新為testkey憑證檔案。
如何使用SignApk.jar來為一個apk或zip檔簽章:
下載附件中的android.zip
#將下載的壓縮包解壓縮到你電腦上的任何位置(例如:C:\android)
如果你的電腦上還沒有安裝JAVA環境,請下載並進行安裝。
如果您已經產生了自己的私鑰/公鑰對,將certificate.pem和key.pk8檔案複製到您解壓縮的android資料夾中。
使用CMD命令列工具cd到android資料夾,然後輸入:(對於我提供的包,只需要將要簽名的文件放在android資料夾中,然後拖至對應的批次檔上即可)
java -jar signapk.jar certificate.pem key.pk8 your-app.apk your-signed-app.apk
或是
使用Java命令列工具,透過執行以下命令來簽署一個更新套件(your-update.zip): java -jar signapk.jar certificate.pem key.pk8 your-update.zip your-signed-update.zip
#以上是如何利用Eclipse工具打包簽章AndroidApk文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!