2015-11-04 11 views
7

Mam dwa różne Android A i B. A i B są moduły w tym samym projekcieAndroid Studio - Wielokrotne aplikacje ze wspólnymi zależnościami w jednym projekcie

Obie mają zależność na module biblioteki Z których z kolei zależy od dwóch modułów biblioteki X i Y

  • a -> Z
  • B -> Z

Z -> X, Y

Teraz przyjęta odpowiedź na tę question mówi, że pojedynczy projekt Android Studio nie może mieć wielu aplikacji.

Co dziwne, jestem w stanie zbudować te dwie aplikacje (w jednym projekcie z Androidem) i uruchomić je na moim telefonie całkiem dobrze. Czy tu brakuje czegoś oczywistego?

Czy pojedynczy projekt studio Android może zawierać wiele aplikacji?

  1. Jeśli odpowiedź brzmi NIE, dlaczego?
  2. Jeśli odpowiedź brzmi TAK, czy są jakieś połowy?
+0

Tak, możesz mieć wiele projektów w jednym projekcie. – Neela

+0

A, B, Z, X, Y to wszystkie moduły. W którym X, Y, Z są typem biblioteki, a A, B są typem aplikacji. – Neela

+0

Dzięki @Neela. Sądzę, że chodziło Ci o "wiele aplikacji w jednym projekcie". Prawidłowo? – acthota

Odpowiedz

3

Pojedynczy projekt Androida może mieć wiele aplikacji, chociaż można spierać się o korzyści wynikające z posiadania kilku aplikacji w jednym projekcie, jeśli nie są ze sobą powiązane.

W każdym razie jest to całkowicie uzasadnione, jeśli masz kilka wersji tej samej aplikacji z pewnymi różnicami między nimi (urządzenia docelowe, branding ...). W takim przypadku system kompilacji Gradle pozwala na uzyskanie wariantów kompilacji (każda wersja kompilacji jest kombinacją produktu o smaku produktu i typu typu kompilacji). Zgodnie z oficjalną dokumentacją (Configuring Gradle Builds > Work with build variants):

System kompilacji wykorzystuje aromaty produktów do tworzenia różnych wersji produktów w aplikacji. Każda wersja produktu Twojej aplikacji może mieć różne funkcje lub wymagania dotyczące urządzenia. System kompilacji używa również typów kompilacji w celu zastosowania różnych ustawień kompilacji i pakowania do każdej wersji produktu. Każda kombinacja smaku i typu produktu tworzy wariant budowlany. System kompilacji generuje inny plik APK dla każdego wariantu kompilacji aplikacji.

Powiązane problemy