Diese Projekte zielen darauf ab:
Spezifikationszusammenfassung:
Hier ist die API der Gegenstücksserver-API, von der diese App die Daten konsumiert-> Rails-API-Base
Installieren Sie Ihre Lieblings -IDE oder nur die Android SDK (Buildtools 23.0.2 und CompilesDK 23, oder definieren Sie Ihre eigenen Versionen in den dependencies.gradle ). Ich benutze Android Studio.
Klonen Sie das Repository und gehen Sie hinein:
git clone git://github.com/jordifierro/android-base.git --origin android-base YourProjectName
cd YourProjectName
./bin/remove_notes
./bin/rename_project YourProjectName your.package.name
./gradlew clean build cAT
./bin/reset_git https://github.com/yourusername/YourProjectName.git
Das war's, Sie können jetzt beginnen, Ihre eigene App zu entwickeln!
HINWEIS: Um die App auszuführen (Sie können jetzt nur die Tests ausführen) denken Sie daran, einen API-Server einzurichten (Rails-API-Base wurde bereits für diese App entwickelt. Sie können jedoch auch Ihre eigenen erstellen) und die RestApi so konfigurieren, dass sie eine Verbindung zu ihm herstellen (einfach restAPI.java-Params ändern).
Die Anwendung selbst ist nahezu leer, zielt nur darauf ab, einige grundlegende Module bereitzustellen, die Strukturen mit einigen Mustern zu implementieren und Beispielcode anzugeben. Hier sind die Spezifikationen:
Das Hauptziel dieser Anwendung besteht darin, das Schreiben von App -Basic -Boilerplate -Code zu vermeiden. Daher sind bereits folgende Funktionen implementiert:
Dies kann ab jetzt verwendet werden und bietet auch eine strukturierte Möglichkeit, mehr Code hinzuzufügen.
Um mehr Beispielcode bereitzustellen, wurde Code entwickelt, um notes zu verwalten ( title content Somit hat die App Notizenindex, Details, Erstellen und Bearbeiten von Bildschirmen.
Sein einzigartiger Zweck ist es, ein Beispielcode zu sein, sodass er beim Ausführen gelöscht wird ./bin/remove_notes -Skript.
Der Code wurde nach dem Clean Architecture-Ansatz und dem MVP-Muster (Model-View-Presenter) strukturiert. Überprüfen Sie dies und diese Beiträge und auch dieses Projekt, um weitere Informationen dazu zu erhalten.
Das Abhängigkeitsinversionsprinzip wird in der App im Grunde genommen einfacher verwendet, um Tests zu erleichtern und die Komponenten entkoppelt und wiederverwendbar zu machen. Es reduziert auch den Code des Boilerplate und hilft bei der Verwaltung der Instanzbereiche. Die Bibliothek, mit der dies erreicht wird, ist Dolch 2. Butterknife wird zur Ansichtsinjektion verwendet.
Durch Clean Architecture werden Sie verschiedene Schichten erstellen, und um ein Rückrufhölle zu vermeiden, wird reaktives Programmierparadigma mithilfe der Reactivex -Bibliothek angewendet.
Als Client -App ist das Hauptziel, dass der Benutzer mit Daten einer Server -API interagieren. Das Projekt zeigt, wie man so einfach damit umgeht. Die Nachrüstbibliothek wird verwendet, um die API -Aufrufmethoden zu implementieren. Authentifizierung, API -Version und Internationalisierung sind in den Anfragen enthalten.
Eines der interessantesten Dinge dieses Projekts ist, dass es eine vollständige Abdeckung der Unit -Tests hat, von Datenmodulen bis hin zu Android -Ansichten, einschließlich aller Zwischenschichten. Dies ist das Ergebnis der Verwendung von sauberer Architektur, Abhängigkeitsinversion und guten Testpraktiken. Ein Beispiel dafür ist die Ansichtsprüfung, bei der der Ansichtspunkter von Mockito verspottet und durch Testen der Dolchkomponente injiziert wird, die von einem benutzerdefinierten Junit -Läufer bereitgestellt wird.
Hier finden Sie Tutorials, die einige dieser Tests erklären:
Ein weiteres Muster und gute Praktiken werden im Projekt verwendet, wie z. B. implementieren Aktivitäten und Fragmente gemeinsames Verhalten mit Vererbung, verwenden Fragmente und definieren die Navigation in den Aktivitäten, um die Bildschirmumgestaltung schmerzlos zu machen, Schnittstellen zu verwenden, um Komponenten zu entkoppeln. Hier eine der verwendeten Ressourcen -> Android Best Practices.
Travis-Ci wurde als kontinuierliches Integrationssystem hinzugefügt, um den gesamten Test für jeden Push (sowohl Java- als auch Android-Tests) durchzuführen.
Um die Tests lokal auszuführen, schließen Sie einfach ein Gerät an oder führen Sie den Emulator aus und führen Sie aus:
./gradlew clean build cAT
Das wird sowohl Java- als auch Android -Tests durchführen.
Es gibt einige Skripte im Ordner /bin -Ordner, damit ein neues Projekt mit dieser Vorlage von Grund auf neu gestartet wird. Befolgen Sie einfach den oben platzierten Abschnitt "Schnellstart".
Alle Shell -Skripte werden vom Shellcheck -Tool verifiziert.
Hier ist die API der Gegenstücksserver, von der diese App die Daten-> Rails-API-Base konsumiert.
Alle Vorschläge und Beiträge sind mehr als willkommen!
./gradlew clean build cAT
Leider gibt es noch keine Mitwirkenden.
http://jordifierro.com