2012-05-10 17 views
1

我正在使用Ant構建我的Android項目。 Android項目已簽入Tortoise SVN。現在,當我創建一個構建時,我希望將apk文件理想地生成到窗口上的不同文件夾中,說明構建的版本號。例如,在第一個版本(ant版本),我想有文件夾bin/1.0/sample.apk和下一個bin/2.0/sample.apk,所以我不能保持不同的版本。理想的版本號應該是版本號清單(右?)。如何才能做到這一點 ?在Windows上使用Ant for Android將新建版文件輸出到新版本號文件夾

回答

14

您的項目中可以有一個custom_rules.xml文件,其中包含將您的apk複製到-post-build目標中所需文件夾的語句。您可以使用copy任務來照顧它。

要從清單檢索版本信息,請按照SO上的this answer

的custom_rules.xml的樣品是:

<?xml version="1.0" encoding="UTF-8"?> 
<project name="custom_rules"> 
    <xmlproperty file="AndroidManifest.xml" prefix="mymanifest" collapseAttributes="true"/> 
    <property name="build.dir" value="bin/${mymanifest.manifest.android:versionName}/" /> 
    <target name="-post-build"> 
     <echo>Version is ${mymanifest.manifest.android:versionName}</echo> 
     <copy toDir="${build.dir}" > 
      <fileset file="${out.final.file}" /> 
     </copy> 
    </target> 
</project> 

注:目前,APK複製到'bin文件夾的子文件夾。您將不得不考慮另一個目錄,因爲'bin'文件夾將在每個清潔操作中被刪除。

+0

對不起,自從我開始使用ant兩天以來 - 我在哪裏放置了自定義規則文件?我在哪裏可以在build.xml中輸入它。我究竟把它放在什麼位置? – Slartibartfast

+0

在項目根目錄(您擁有build.xml的地方)中創建custom_rules.xml。您不需要對build.xml進行任何更改。但是,您可以打開並嘗試瞭解它是如何工作的 - 它有很好的文檔記錄。 – Rajesh

+0

謝謝!我要試試這個,並回答一些其他問題或者標記這個答案吧:D – Slartibartfast

相關問題