(Nach-) Vorteil mehrere Module in einem Android Studio Projekt zu haben?

Lesezeit: 3 Minuten

Benutzer-Avatar
Tobias

Ist es vorteilhaft, mehrere Module in einem Android Studio-Projekt zu haben, anstatt nur ein einziges großes zu haben? App-Modul?

ich weiss Bescheid Android-Module im Allgemeinen und die Vorteile von FEST Daher ist mein Fokus besonders in Betracht zu ziehen Leistung aufbauen. Da Gradle inkrementelle Builds durchführen kann und wenn sich nur ein Modul ändert, müssen diese anderen Module nicht verarbeitet werden?

Ist dies spürbar oder gibt es sogar einen erheblichen Overhead?

  • Wenn Sie mit Eclipse vertraut sind, überprüfen Sie diese answer-stackoverflow.com/a/18329892/1576416 und diese stackoverflow.com/a/28660722/1576416

    – Amrut Bidri

    20. Januar 2017 um 11:34 Uhr


Benutzer-Avatar
Anurag Singh

Es ist von großem Vorteil, mehrere Module zu haben, anstatt ein einziges großes App-Modul zu erstellen. Nachfolgend die wichtigsten Punkte:

  1. Wenn Sie feststellen, dass die Kompilierzeit länger dauert, können Sie das Modul von Gradle, an dem Sie nicht arbeiten, vorübergehend deaktivieren und es schneller kompilieren.
  2. Ein Modul hilft uns auch, das Projekt in diskrete Funktionseinheiten zu unterteilen. Sie können ein Datenmodul erstellen, das alle reinen Java-Beans enthält und von mehreren Apps verwendet werden kann, wenn Sie sich in derselben Domäne befinden. Z.B. Die Finanzdomäne kann zwei Anwendungen haben, eine zum Anzeigen von Policen für Kunden und die andere für einen Versicherungsagenten zum Anzeigen derselben Daten. Das Datenmodul kann jedoch von allen Apps gemeinsam genutzt werden, und sogar das Datenmodul kann vom Server- oder API-Team ausgeliehen werden. Das Datenmodul kann ohne Android-Abhängigkeiten einzeln getestet werden und jeder, der sich mit Java auskennt, kann Testfälle schreiben.
  3. Jedes Modul kann unabhängig erstellt, getestet und debuggt werden.
  4. Zusätzliche Module sind oft nützlich, wenn Sie Codebibliotheken innerhalb Ihres eigenen Projekts erstellen oder wenn Sie unterschiedliche Codesätze und Ressourcen für verschiedene Gerätetypen wie Telefone und Wearables erstellen möchten, aber alle Dateien innerhalb desselben Projekts behalten und einen Teil des Codes gemeinsam nutzen möchten .
  5. Auch das Android-App-Modul und das Bibliotheksmodul sind unterschiedlich.
  6. Sie können zwei verschiedene Versionen des Moduls basierend auf den API-Versionen ab ASOP behalten.

Weitere Informationen finden Sie in den Ressourcen für Android-Entwickler

Wie die Modularisierung die Erstellungszeit Ihrer Android-App beschleunigen kann

App-Modularisierung und verzögertes Laden von Modulen bei Instagram und darüber hinaus

Modularisierung von Android-Anwendungen von Mauin

Umfrage dazu, wie Android-Entwickler ihre Apps modularisieren

  • Natürlich habe ich mir bereits den Developer Guide angesehen, aber mein Fokus lag eher auf der Build-Performance und nicht auf den Vorteilen der Modularisierung im Allgemeinen.

    – Tobias

    22. Januar 2017 um 19:31 Uhr

  • Vortragsvideo von Marvin Ramin „Modularizing Android Applications“ skillsmatter.com/skillscasts/…

    – alexfdz

    26. April 2018 um 14:51 Uhr

Benutzer-Avatar
Tobias

Auf Medium gab es gestern einen Artikel, der genau auf meine Frage eingeht:

https://medium.com/@nikita.kozlov/how-modularisation-affects-build-time-of-an-android-application-43a984ce9968#.at4n9imbe

tl;dr:

Erstens und am wichtigsten war, dass die Hypothese richtig war, dass die Modularisierung des Projekts den Build-Prozess erheblich beschleunigen kann, jedoch nicht für alle Konfigurationen.

Zweitens, wenn die Aufteilung falsch durchgeführt wird, wird die Build-Zeit drastisch erhöht, da Gradle sowohl die Release- als auch die Debug-Version von Bibliotheksmodulen erstellt.

Drittens ist das testgetriebene Arbeiten für ein Projekt mit mehreren Modulen viel einfacher, da das Erstellen eines kleinen Bibliotheksmoduls viel schneller ist als das gesamte Projekt.

Viertens verlangsamt das parallele Ausführen vieler Dinge den Build. Es ist also eine gute Idee, leistungsfähigere Hardware zu haben.

Nachfolgend finden Sie die Ergebnisse aller in diesem Artikel beschriebenen Experimente

Aktualisieren

Auf der Google I/O ’17 angesprochen: https://youtu.be/Hx_rwS1NTiI?t=23m17s

1063480cookie-check(Nach-) Vorteil mehrere Module in einem Android Studio Projekt zu haben?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy