2017-04-06 37 views
0

我開發了一個完整的工作應用程序,從現在起稱爲「base-app」,它使用不同的模塊和庫,具有啓動畫面,活動,片段等等。Android - 將一個完整的應用程序作爲一個庫使用

我想開發另一個應用程序(將來會有更多的應用程序),它會使用這個base-app並添加更多的活動和功能。基地應用程序它不是一個真正的庫,因爲可以獨立執行。但我需要爲客戶添加定製。

我不想在每個新項目中克隆這個應用程序,因爲對於基本應用程序中的每個更改,我都應該修改所有派生項目。

有沒有辦法做到這一點?使用這個基礎應用作爲起點,使用它的啓動器,但爲每個客戶添加不同的活動?

感謝

回答

0

我們有一個類似的設置了兩個我們的應用程序,你需要做到以下幾點:

  1. 馬克base-app作爲一個庫(右鍵單擊該項目名稱訪問屬性對話框)
  2. 創建一個新應用程序 - base-wrapper - 使用base-app庫,並將AndroidManifestbase-app複製到base-wrapper
  3. 創建一個新應用程序 - extended-wrapper - 使用base-app庫,將AndroidManifest複製從base-app再次複製,並向該項目添加所需的任何新活動/服務。

因此,現在您有2個應用程序可以構建到apks,兩者都使用base-app庫中的相同共享代碼,因此您不需要複製任何代碼。

如果您在base-wrapper中只需要一些活動或代碼,您可以將這些活動或代碼從庫移動到包裝應用程序項目。

+0

工程,在android studio 2.3上沒有辦法「標記爲」,但我解決了在build.gradle中添加apply插件:'com.android.library'。 然後將基礎應用程序庫導入修改setting.gradle定義子項目的新項目: def子項目= [name:':base-app',路徑:'C:/ software/base-app'] ] – userLiuk

+0

是的,它似乎刪除了「庫」複選框中的一些更新,我有一段時間沒有使用它... – marmor

相關問題