2015-11-04 219 views
2

我有兩個獨立的android應用程序項目,這些項目是在android studio中製作的我正在嘗試將項目1合併到項目2中,使其成爲所有應用程序。這個?我知道如何在eclipse中完成,但不是在android studio中。 請注意,他們都是這些項目都是android應用程序,他們都不是android庫。如何將一個android studio項目合併到另一個android studio項目中

任何幫助將是驚人的!

當我導入項目1到項目模塊我得到的品位打造這個錯誤:

Warning:Dependency School Tools Calc lib.gz:SchoolTools:unspecified on project app resolves to an APK archive which is not supported as a compilation dependency. File: /Users/chrisdebrodie/Documents/School Tools Calc lib.gz/SchoolTools/build/outputs/apk/SchoolTools-release-unsigned.apk

+2

[AndroidStudio - 模塊依賴於搖籃]的可能的複製(http://stackoverflow.com/questions/18656023/androidstudio-module-dependencies-in-gradle) – 323go

+0

它happnes因爲你想添加一個依賴它有一個插件com.android.application。你做不到。 –

回答

4

在Android Studio中不能有兩個「項目」作爲單個項目。

將一個(或兩個)項目轉換爲庫。然後創建一個「外殼」項目來構建每個應用程序。 shell項目基本上是空的,或者它可能會構建特定的值覆蓋。這樣做的好處是您可以修改庫並且更改將立即反映在兩個/所有版本中。缺點是你將不得不解決任何改變任何庫導致的所有項目中的問題。但是你可以用類似的方式創建「組合」項目。

將一個或兩個轉換爲庫後,您可以創建一個aar文件。這讓您可以選擇將aar作爲Gradle依賴項。請注意,每次修改該項目時都需要重新構建aar - 因此,如果您有關於哪個更穩定的代碼庫的說明,請參閱aar。這使您能夠「版本控制」主項目依賴項,以便在不影響其他項目的穩定性的情況下更改一個項目。

此外,您可以編寫腳本並使用像Bamboo或Jenkins這樣的工具對aar進行實時更新 - 但這就像使用「快照」依賴關係一樣。當您更改aar時,它可能會進行編譯,但是直到您在該項目上進行構建之前,它可能會中斷第二個項目的構建,而不知道它。 (是的,您可以在該項目中包含構建作爲Bamboo或Jenkins腳本的一部分,但這並不容易)。

可能還有其他替代方案,但這些方案似乎提供了足夠的選項來生成各種構建選項。

+0

謝謝你的真棒指南,我會試試這個,讓你知道它是怎麼回事! – Phoneswapshop

+0

我能夠將應用程序2合併到應用程序1謝謝你的幫助! :) – Phoneswapshop

+0

@Jim如何將我的android studio項目轉換成.aar文件。 https://stackoverflow.com/questions/48001755/is-it-possible-to-show-multiple-apps-in-my-android-app?noredirect=1#comment82972324_48001755 – Ana

-1

添加一個項目爲他人的模塊。 This答案解釋瞭如何去做。請注意,此答案是爲了響應添加庫依賴項,但它也適用於您的情況。

+0

謝謝我已經嘗試這樣做,並得到此錯誤:警告:依賴學校工具Calc lib.gz:SchoolTools:未指定在項目應用程序解析爲一個APK歸檔不支持作爲編譯依賴項。 File:/ Users/chrisdebrodie/Documents/School Tools Calc lib.gz/SchoolTools/build/outputs/apk/SchoolTools-release-unsigned.apk – Phoneswapshop

+0

嗯好的。你有兩個項目的控制權嗎?你能修改模塊依賴關係的gradle文件作爲庫而不是應用程序嗎? – davehenry

+0

我有兩個項目的源代碼問題是,我試圖添加到我的其他項目的應用程序不能用作庫任何其他想法? – Phoneswapshop

0

我寫了一個回購安全和容易地處理這個工作人員Jacksgong/android-project-combine

特點:

  • 只是一個發展中的env包裝,但不能進行修改的項目,使用安全。 不同的Android項目在一個Android Studio窗口中一起開發。
  • 查找引用並跳轉到源代碼而不是jar包中的.class文件。
  • 跳出每個項目編譯系統並使用官方編譯系統。
  • 很輕,每次刷新結合項目都非常快。
相關問題