iHeartRadio erstellt mit Android Architecture Components eine übersichtlichere und schlankere Codebasis

iHeartRadio mit Sitz in New York City bietet unbegrenzte Musik und Tausende von Radiosendern in einer App. Das Unternehmen ist in den Bereichen Radio, Online, Mobil, Digital und Social Media, Livekonzerte und -veranstaltungen, Syndizierung, Musikforschung und unabhängige Medienvertretung tätig.

Seit der Einführung der App im Jahr 2008 wurde sie weltweit über eine Milliarde Mal heruntergeladen. Ende 2017 war die Codebasis jedoch in die Jahre gekommen und die Verwaltung des Codes sowie die Integration neuer Funktionen erwiesen sich als schwierig.

Vorgehensweise

iHeartRadio hat sich für die Android Architecture Components entschieden, als das Unternehmen mit der Aktualisierung seines Codes begann. Die unkomplizierte, einfach zu implementierende Room-Persistenzbibliothek war für die Entwickler von iHeartRadio aufgrund ihrer Funktionen zur Verarbeitung von asynchronen Abfragen und der Unterstützung von RxJava, das in ihrem Code häufig verwendet wird, sehr attraktiv.

Außerdem haben sie lebenszyklusbewusste Komponenten eingeführt, die Aktionen als Reaktion auf eine Änderung des Lebenszyklusstatus einer anderen Komponente ausführen. Die iHeartRadio-Entwickler fanden diese Komponenten sehr nützlich, um Abhängigkeiten zu verringern, die in Aktivitäten und Fragmenten eingefügt werden. Außerdem erstellte das Unternehmen Prototypen mit ViewModel, wodurch Daten Konfigurationsänderungen wie Bildschirmrotationen überstehen.

Ergebnisse

iHeartRadio konnte problemlos zu den Architecture Components migrieren und die Bibliotheken verwenden, um die Integration zu testen. Room und andere Komponenten erfordern nur sehr wenig Boilerplate-Code, sodass der Code der App jetzt deutlich kürzer ist. Architecture Components haben auch zu weniger Speicherlecks geführt. Ein weiterer Vorteil war, dass neue Entwickler, die dem Team beitraten, schnell eingearbeitet werden konnten und mit dem Programmieren beginnen konnten.

Insgesamt hat die Einführung von Architecture Components iHeartRadio dabei geholfen, eine übersichtlichere und schlankere Codebasis zu erstellen, mit der Fehler vermieden werden können. Das ist eine gute Nachricht für jede App, insbesondere für eine, die ein All-in-One-Angebot für digitale Audioinhalte für ein weltweites Publikum bietet.

Erste Schritte

Android Architecture Components ist für alle Entwickler als Teil von Android Jetpack verfügbar. Erste Schritte mit Android-Architekturkomponenten