Anzeige
Anzeige
Listicle
Artikel merken

Warum kompliziert, wenn es auch einfach geht: Die besten Android-Librarys

Libraries für die Android-Entwicklung gibt es zahlreiche. Doch nicht jede noch so kleine Bibliothek ist sinnvoll. Eine Sammlung der spannendsten Android-Librarys, die dein Projekt wirklich voranbringt.

Von Andreas Domin
5 Min. Lesezeit
Anzeige
Anzeige

(Grafik: Github/stfalcon-studio)

Wer eine Android-App programmiert, auf ein Problem stößt und ein bisschen recherchiert, findet nicht selten Lösungen durch passende Librarys. Doch nicht für jedes noch so kleine Problem sollte zu Bibliotheken gegriffen werden. Denn das verursacht auch eine Abhängigkeit: vom Support der Library, da die immer aktuell gehalten werden muss, falls auch deine App auf dem neusten Stand bleiben soll. Außerdem bieten manche Programmierbibliotheken häufig mehr Features, als tatsächlich benötigt werden, und blasen eure App so mit überflüssigem Code auf. Ihr solltet euch also mehr als zweimal überlegen, ob das Problem mit ein paar selbstgeschriebenen Code-Zeilen besser gelöst werden kann.

Anzeige
Anzeige

Jedoch gibt es auch einige ausgereifte Bibliotheken, die nicht ohne Grund sehr weitverbreitet sind: Sie vereinfachen komplexe Probleme häufig immens und werden stets aktualisiert. Darunter beispielsweise Gson, das von Google selbst entwickelt wird. Wir stellen einige spannende Android-Libraries vor.

Daten abfragen, speichern und verarbeiten

Ohne Daten geht gar nichts. Auch nicht bei Android-Apps. Die passenden Bibliotheken für REST-API-Abfragen, Json-Parsing und SQLite-Alternativen findet ihr im folgenden Abschnitt.

Anzeige
Anzeige

Retrofit

Retrofit bietet eine elegante Lösung, um REST-API-Anfragen auszuführen. Abfragen werden einfach als Interface verfasst und die Methoden bekommen lediglich passende Annotations. So könnte ein entsprechendes Beispiel mit Retrofit aussehen:

Anzeige
Anzeige
public interface RestApiInterface {
    @GET("/api/email")
    User getEmail(@Query("email_id") int emailId, Callback callback);
}

// Die zugehörige URL der API muss gesetzt werden
RestApiInterface restApiInterface = new RestAdapter.Builder()
            .baseUrl("https://example.com/").build()
            .create(RestApiInterface.class);

// Email-Abfrage mit der ID 12345
restApiInterface.getEmail(12345, new Callback() {
    @Override
    public void success(Email email, Response response) { }

    @Override
    public void failure(RetrofitError retrofitError) { }
});

Gson

Wer mit API arbeitet, muss häufig Json-Dateien verarbeiten können. Die Library Gson hilft dabei, solche Dateien mit nur einem Aufruf in Objekte einer passenden Klasse umzuwandeln. Auch Retrofit verwendet Gson bereits und kann deswegen die REST-API-Abfragen direkt als passende Objekte abspeichern. Ohne Retrofit lässt sich das Parsing einer Json-Datei mit wenigen Zeilen Code realisieren:

String emailJSON = new Gson().toJson(email);
Email email = new Gson().fromJson(emailJSON, Email.class);

Room

Room ist eine von Android zur Verfügung gestellte Library, die SQLite abstrahiert und dabei die Gestaltung einer robusten Datenbank ermöglicht, wobei der Zugriff durch gewöhnliche SQL-Abfragen realisierbar ist. Wer mit eher kleineren Datensätzen arbeitet, sollte eher auf Room statt auf die beiden folgenden Bibliotheken Realm und Objectbox setzen.

Anzeige
Anzeige

Realm

Nicht bei jedem neuen Starten einer Activity sollten die benötigten Daten erneut mit langsamen Aufrufen abgefragt werden. Eine mögliche Lösung ist das Abspeichern der Daten in einer lokalen Datenbank. Realm ist dabei eine der beliebtesten objektorientierten Lösungen für dieses Problem – nicht zuletzt wegen der einfachen Nutzung und ausführlichen Dokumentation.

Objectbox

Mit Objectbox gibt es auf dem Markt noch eine ziemlich neue Alternative zu Realm. Vorteile sind eine einfache Implementierung und die Reduzierung von Code. Auch soll die Bibliothek deutlich performanter als SQLite sein.

Das Ergebnis der Open-Source-Benchmarking-App von Objectbox. (Grafik: Objectbox)

Das Ergebnis der Open-Source-Benchmarking-App von Objectbox. (Grafik: Objectbox)

Parceler

Soll ein Objekt beim Starten einer neuen Activity an diese weitergegeben werden, kommt häufig das Interface Parcelable zum Einsatz. Jedoch müssen für jede Klasse mehrere Methoden und ein passender Creator geschrieben werden. Das ist bei mehreren Klassen mühsam, zumal die Implementierungen nahezu identisch sind. Parceler reduziert den Aufwand stark, da nur noch eine Annotation und zwei einfache Methoden-Aufrufe benötigt werden:

Anzeige
Anzeige
@Parcel
public class Email {
    public Email() { }
}
// So wird das Objekt übergeben...
Intent intent = new Intent(this, MyActivity.class);
intent.putExtra("email", Parcels.wrap(emailObject));
startActivity(intent);

// ...und so wieder ausgelesen
Email email = (Email) Parcels.unwrap(getIntent().getParcelableExtra("email"));

Picasso

Die folgende Library macht ihrem Namen alle Ehre. Es geht zwar nicht um Pablo Picasso und seine Gemälde, dafür aber vielmehr um eine modernere und digitale Möglichkeit, Bilder zu „erschaffen“: Wie können Bilder effizient heruntergeladen und gecached werden? Picasso nimmt sich des Problems an und kann eben genau das mit nur einer Zeile Code realisieren.

Picasso.get().load("https://example.com/image.png").into(imageView);

Android-Libraries fürs Auge

Android bietet von Haus aus einige einfache Views und Animationen, die auch den Richtlinien des Materialdesigns folgen. Wenn das nicht reicht, helfen folgende Bibliotheken weiter.

Lottie

Airbnb bringt mit Lottie Bewegung in deine Android-App. Denn mit der Library lassen sich Adobe-After-Effects-Animationen, die als Json-Dateien exportiert werden, ganz einfach in die App integrieren. Es gibt sogar eine Auswahl an kostenlosen Animationen.

Anzeige
Anzeige
Das ist nur eine sehr kleine Auswahl von dem, was mit Lottie möglich ist. (Grafik: Airbnb)

Das ist nur eine sehr kleine Auswahl von dem, was mit Lottie möglich ist. (Grafik: Airbnb)

Styleable-Toast

Styleable-Toast macht aus den langweiligen Android-Toasts farbenfrohe und einfach anpassbare Mitteilungen. Egal ob mit Icons, runden oder kantigen Ecken, buntem Hintergrund oder Text. Es muss lediglich ein passendes Design in der style.xml oder mit dem Builder-Pattern erstellt werden.

Mit Styleable-Toast hübscht du deine sonst langweiligen Mitteilungen auf. (Screenshot: Github/Styleable-Toast)

Mit Styleable-Toast hübschst du deine sonst langweiligen Mitteilungen auf. (Screenshot: Github/Styleable-Toast)

Transitioner

Apps vermitteln ein deutlich stimmigeres Erscheinungsbild, wenn die Übergänge beim Starten einer neuen Acitivity eine passende Animation haben. Passend heißt in dem Fall die Transformation von Layouts, die sich in veränderter Art und Weise in beiden Activitys wiederfinden. Die vernünftige Umsetzung mit den von Android zur Verfügung gestellten Mitteln ist jedoch ziemlich kompliziert. Transitioner vereinfacht das deutlich.

Mit der Android-Library Transitioner können richtig schöne Activity-Übergänge gezaubert werden. (Bild: Dev Labs)

Mit der Android-Library Transitioner können richtig schöne Activity-Übergänge gezaubert werden. (Bild: Dev Labs)

Tap-Target-View

Um die Funktionen deiner App vorzustellen und dem Nutzer beim ersten Start eurer mobilen Anwendung einen Überblick zu verschaffen, empfiehlt Google das Tap-Target-Feature. Eine Implementierung der Design-Richtlinie wird von Keepsafe mit der Library Tap-Target-View zur Verfügung gestellt.

Anzeige
Anzeige
Eine Implementation von Tap-Target. (Screenshot: Github/Keepsafe)

Eine Implementation von Tap-Target. (Screenshot: Github/Keepsafe)

Chat-Kit

Auch für die Integration eines Chat-Dienstes gibt es für die Benutzeroberfläche eine komplett eigene Library mit dem Namen Chat-Kit. Flexibel, individuell anpassbar und ein Datei-Management sind die zentralen Features.

Schnell das komplette UI für einen Chat erstellen. Chat-Kit macht es möglich. (Grafik: Github/stfalcon-studio)

Schnell das komplette UI für einen Chat erstellen. Chat-Kit macht es möglich. (Grafik: Github/stfalcon-studio)

Fazit

Es gibt unzählig viele Android-Bibliotheken auf Github mit den verschiedensten Funktionen. Darunter Android-Apps, die zu einem Großteil aus Bibliotheken bestehen. Das kann schnell zu einem riesigen Problem werden, wenn eine Library nicht mehr supportet wird oder nicht mit der aktuellsten Android-Version kompatibel ist. Aus diesem Grund sollte immer abgewogen werden, ob eine Library sinnvoll ist.

Dieser vom 8.4.2018 stammende Artikel wird regelmäßig aktualisiert.

Anzeige
Anzeige

Das könnte dich ebenfalls interessieren: So kommen die neuen Features von Android P in deine App

Mehr zu diesem Thema
Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
5 Kommentare
Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Hans Bratwurst

Moin, das Plural vom englischen Wort „library“ wird folgendermaßen geschrieben: libraries. Ansonsten guter Artikel. Mfg

Antworten
Andreas Domin

Hallo,

im Englischen ist das absolut der Fall. Werden englische Wörter jedoch im Deutschen verwendet, so wird für die Pluralbildung -ys statt -ies verwendet.

Gerne kannst du das hier auch nochmal genauer nachlesen: https://www.duden.de/sprachwissen/newsletter/Duden-Newsletter-170409

Viele Grüße
Andreas

Antworten
Klaus Krakauer, Bruder des Bratwursts

Hallo Andreas Domain,
danke für die Info. Wieder was gelernt :)
LG

Mac Guyver

Es heißt „libraries“ …

Antworten
Andreas Domin

Hallo,

im Englischen ist das absolut der Fall. Werden englische Wörter jedoch im Deutschen verwendet, so wird für die Pluralbildung -ys statt -ies verwendet.

Gerne kannst du das hier auch nochmal genauer nachlesen: https://www.duden.de/sprachwissen/newsletter/Duden-Newsletter-170409

Viele Grüße
Andreas

Antworten
Abbrechen

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Anzeige
Anzeige