2010-08-09 31 views
5

我有一個遺留應用程序,需要將其分解爲庫項目(公共代碼)和兩個應用程序項目(付費應用程序和免費應用程序)。我不使用Eclipse進行開發,也不使用Android SDK提供(生成)的Ant構建(有幾個原因:不同的項目目錄結構,集成到構建中的單元測試,與CruiseControl集成,自動構建編號等),但使用我們的自定義構建文件。Android庫項目定製生成

我需要修改我的Ant構建,使他們構建引用我的庫項目的應用程序項目。我查看了SDK附帶的示例應用程序和Ant構建版,但不明白它是如何完成的。我看到該庫項目包含「libs」目錄和 「default.properties」文件,其中「android.library」屬性設置爲「true」。我看到應用程序項目包含「default.properties」文件,其中「android.library.reference.X」屬性設置爲庫項目目錄值。但是我沒有在Ant構建中找到任何對這些屬性的引用(項目Ant構建文件以及隨SDK附帶的Ant構建)。只要將這些文件放入應用程序/庫項目目錄中也無濟於事,即SDK工具不會解釋它們。

我的猜測是,這是由com.android.ant.SetupTask執行的,但我想知道它是如何執行的。我的build是一組調用(使用exec)Android SDK工具的目標:appt,dx,apkbuilder等等。所以我想知道我需要使用哪些命令行參數,比如說,使用appt工具合併資源?

預先感謝您。

回答

2

我最近爲我的android產品之一寫了一個ant構建腳本,它使用另一個android框架作爲庫。我使用的技巧是把src,資源資產的庫項目複製到主項目中,然後使用ant android任務來構建apk包。這個技巧對我來說非常合適。

讓我知道你是否仍然需要一些幫助。

+0

我需要修改資源文件(xml)和構建,這些可以做forloop?你說你寫了ant構建腳本,可以用gradle構建腳本嗎? – aelam 2013-08-21 02:36:05

1

集成驅動器:[android sdk的路徑] \ tools \ ant \ ant_rules_r3.xml到您的build.xml。它應該照顧庫文件的複製並正確生成構建。

+0

什麼是ant_rules_r3? – gregm 2010-12-22 16:14:03

+0

它不在Android 3.0 SDK中。 – 2011-04-29 19:58:31