2016-11-17 73 views
0

我有一個Android項目,它使用了一個庫項目,但都是在不同的Git倉庫中託管,如下所示。我已經將該lib項目添加爲ADT中App項目的依賴項。將不同的Git移植到Android Studio的ADT項目

GitHub.com\username\MyAndroidAppProject 
GitHub.com\username\libMyLibrary 

我已經將MyAndoridAppProject遷移到Android Studio,並使用相同的回購。我如何轉換libMyLibrary項目並將其引用到此項目中?目前我已經從lib中複製了整個代碼並添加爲模塊。現在的問題是,lib代碼是應用程序項目存儲庫的一部分。

以下是當前的項目結構,這對應於我的MyAndroidAppProject的github回購。

MyAndroidAppProject 
-app 
-libMyLibrary 
-libs 
-build.gradle 

編輯:我想保留lib項目作爲一個獨立的Git項目,因爲它也被其他應用程序使用。

回答

1

如果我理解得很好,你想讓這兩個項目都完全獨立,不是嗎? 在這種情況下,你應該:

1 - 創建一個libMyLibrary在其上的ExampleApp(並保持它在自己的倉庫)。

2 - 讓MyAndroidAppProject有一個外部引用該庫,修改你的build.gradle:

include ':app', ":libmylibrary" 
project(':libmylibrary').projectDir = new File(settingsDir, '../ExampleApp/libmylibrary'). 

的 '../ExampleApp/libmylibrary' 顯然是從MyAndroidAppProjectlibmylibrary的路線。

這樣,從Git的點,MyAndroidAppProject將不得不libmylibrary一個參考,但不會包含代碼本身,libmylibrary將擁有自己的源和Git倉庫,每次和你的修改libmylibrary, you will see the changes on your MyAndroidAppProject`。

希望有所幫助。

+0

這是一個很好的答案,正是我的要求。讓我檢查這對我是否有效 – midhunhk

+0

希望有幫助。在這裏你可以用一些Gradle方法來解釋這個方法,它可以用來檢索libmylibrary模塊:https://docs.gradle.org/current/javadoc/org/gradle/api/initialization/Settings.html – zapotec

+0

必須做一些重新進口,headbanging和一些更多的谷歌搜索。但最終讓它工作。謝謝@zapotec – midhunhk