2011-03-17 36 views
3

我在家裏有幾個側面項目應用程序,我已經安裝了一個Jenkins安裝程序來檢查它們並構建APK,然後我將它們轉移到我的手機並與之玩耍。構建android應用程序的簽名和發佈版本到jenkins/hudson中?

我期待在市場上免費發佈其中的一些,所以我需要用證書籤名並準備好最終的APK。

Jenkins可以這麼做嗎?例如,我是否可以有一個生成目標生成我的「正在開發」APK,並且還有該目標(或另一個目標)創建最終的APK文件準備就緒?

有什麼建議嗎?

回答

5

如果簽名可以自動執行(通過命令行或類似方式),那麼答案是「是」。

有幾種方法可以做到這一點,但首先是:有沒有什麼好的理由不簽署每一個構建?

簽署每個構建意味着您不需要任何額外的配置來創建可發佈的工件,並且您知道您測試的內容和部署的內容是相同的。

如果你想成爲選擇什麼建立你籤,有兩種方法來記:

  • Parameterized builds:這些是可以當你點擊現在構建定製的環境變量。您可以添加一個稍後在構建步驟中反應的標誌。

  • 添加拾取從你的主要構建工作和體徵他們的器物,使用https://jenkins-server/job/jobname/lastSuccessfulBuild/artifact/或這裏的方法之一另一份工作:How to access Hudson job1 artifacts from another job2?

5

在標準Android Ant構建文件是一個釋放目標遏制。這將會在沒有進一步配置的情況下開始創建一個未簽名的apk。正如克里斯托弗指出要做一個簽名版本,您可以使用key.store,key.store.passwordkey.alias,key.alias.password配置您的密鑰庫並通過ant腳本生成簽名的apks。關於此的documentation可能提供關於配置構建的進一步信息。

+2

它是可能的:只需將「key.store.password」和「key.alias.password」添加到您的屬性文件。 – 2011-03-20 01:13:27

2

是的......最簡單的方法是使用Maven Android插件自動執行它。示例項目中有我寫在那裏的MorseFlash示例,其中整個發佈過程自動化,包括jarsigning,zipaligning和proguard運行,在開發和生產配置等之間切換。

這可以在命令行上完成,因此可以在Hudson上完成。順便說一句,如果你有興趣我在AnDevCon上做了關於Maven和Android的演示以及測試和Android的CI,幻燈片放在我的網站上。 http://www.simpligility.com

相關問題