您的位置:首頁>正文

使用ant自動構建apk

最近因管道過多, 需要單獨接入管道支付sdk的管道也很多, 而首發在即、人手不足, 所以著手了部分相關的工作, 看了下目前的操作流程。 。 無奈人比較懶, 所以決定進行一波簡化, 先考慮了兩種方案:

1)腳本批次處理

2)ant自動構建(eclipse的打包方式)

歸根到底, ant的build.xml自動化方式也屬於腳本處理的一種, 還能省去不少設計工作, 因此決定使用ant的方式(官網:http://ant.apache.org/manual/)。

Tip:使用ant的構建方式, 對環境變數有比較嚴格的要求(SDK/JDK等)!

首先, 瞭解下ant的build.xml的使用:最簡單的方式, 先對已有專案自動化生成build.xml等檔, 使用Android SDK自帶的工具:android.bat(目錄/tools/android.bat, 一般會放到環境變數中),命令列調用方式如下:(/tools/)android update project --path ProjectPath,

調用結束即會在專案路徑下生成build.xml等檔, 接下來我們下來分析下自動生成的幾個檔:

1)build.xml(這裡, 我省略了自動生成時的注釋內容, 大家可以自行閱讀)

Tip:ant的設計中, 當有引用、依賴檔存在時, 如有重複項/衝突項, 以先載入的內容為主

2)local.properities及project.properties

伴隨build.xml自動生成的另外兩個檔, local.properities檔定義了sdk的路徑資訊, project.properties檔則定義了當前工程的相關設置資訊

分析完自動生成的檔, 我們來繼續剛才分析build.xml的思路深入分析一下, 在改檔的最後, 導入了sdk提供的內置的build.xml檔(為區分期間, 前者稱為auto_build.xml, 後者為sys_build.xml), 我們繼續分析下sys_build.xml檔, 鑒於檔比較大, 這裡只針對幾個在處理自動化構建中需要關注的點進行說明:

在構建release版本時, 需要用到keystore檔, 因此我們後面我們需要對相關屬性進行配置。

這裡會牽扯到我們環境變數設置中的JAVA_HOME的設置, 也是經常出現錯誤的地方, 常見的錯誤資訊為JAVA_HOME指向出錯, 可能的原因有:

1)沒有在環境變數中定義JAVA_HOME

2)部分設置不正確(網上給出的解決方案多為複製jdk中的文件到jre), 這裡推薦ant編譯時環境變數及錯誤提示問題中提到的方案(這裡未做嘗試)

到這裡, 我們所需要做工作就明確了:定義keystore的相關屬性設置, 為最簡化工作內容, 可以直接在專案路徑下創建上文提到的ant.propertities檔, 使用該檔配置所需屬性:

key.store=KeyStorePath\name.keystore #注意轉義, 屬性名稱不能修改(要與sys_build。

xml中的引用一致)

key.alias=alias.keystore

key.store.password=123456

key.alias.password=123456

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示