Herbarium
Ein Pflanzenführer für die Hosentasche mit 500 Kräutern und Wildblumen und einem Notizbuch für eigene Funde.
- Rolle
- Design und Entwicklung, im Alleingang
- Art
- Eigenes Projekt, veröffentlicht bei Google Play
- Zeitraum
- 2016–2020 (Version 4.2)
- Plattform
- Android, natives Java
Das Produkt
Herbarium ist ein Pflanzenführer, der in die Hosentasche passt und ohne Verbindung funktioniert: 500 Arten, jede mit Foto, Beschreibung, Verbreitung und Lebensraum auf Englisch und Italienisch, alles in der App enthalten.
Die App ist um die Frage herum gebaut, die sich auf einer Wiese tatsächlich stellt (was ist dieses lila Ding, das im September auf vierhundert Metern blüht?), und beantwortet sie mit Filtern nach Blütenfarbe, nach dem, was in diesem Monat blüht, und nach der Höhe, die das Smartphone meldet. Dazu führt sie ein Notizbuch: Jeder Fund wird mit Position, Höhe, Foto und Notizen gespeichert.
- 500
- Arten im Offline-Katalog
- 2
- Sprachen: Englisch und Italienisch
- 1 Mio.
- mitgelieferte Punkte des Geoidrasters, um die GPS-Höhe in Meereshöhe umzurechnen
- 10k
- Zeilen Java
Rundgang
Die App in Aktion
Wählen Sie eine Aufnahme oder springen Sie direkt zu einem Kapitel.

Aufgezeichnet von der echten App auf einem Android-Emulator. Ohne Ton.
Funktionen
Von „Was ist das für eine Blume?“ zum datierten Eintrag im Notizbuch
01
Ein Katalog, den man mit den Augen durchsucht
Der Katalog ist eine Wand aus Fotos, die seitwärts scrollt, so auf den Bildschirm abgestimmt, dass immer vier Reihen hineinpassen. Wer einen Teil eines wissenschaftlichen Namens eingibt, grenzt die Auswahl schon beim Tippen ein; ein Antippen öffnet die Pflanze.
02
Filter, die zur Begegnung mit einer Pflanze passen
Den Namen kennt man selten; man weiß, wie sie aussieht und wo man ist. Deshalb filtert man nach der Blütenfarbe, danach, ob die Art in diesem Monat blüht, und danach, ob sie in der aktuellen, vom GPS gemessenen Höhe wächst. Die Filter lassen sich frei kombinieren.
03
Ein Steckbrief für jede Art
Trivialname und wissenschaftlicher Name, ein zoombares Foto mit Bildnachweis, Beschreibung, Verbreitung und Lebensraum. Ein Blütenkalender hebt den aktuellen Monat hervor, und ein kleiner Berg zeigt die Höhenverbreitung mit einer Linie auf der eigenen Höhe. Für mehr öffnen sich Wikipedia und Wikimedia Commons direkt in der App.
04
Ein Notizbuch fürs Gelände
Ein Fund markiert die Stelle auf einer Satellitenkarte und erfasst Koordinaten, Datum und Höhe. Die rohe GPS-Höhe liegt um Dutzende Meter daneben, deshalb mittelt die App mehrere Messungen und korrigiert sie mit einem mitgelieferten Geoidmodell. Dazu ein Foto und eine Notiz, und die Pflanze landet in „My herbs“, wo jeder Fund einer Art aufbewahrt wird.
Unter der Haube
So wurde es entwickelt
Offline-first
Eine 33 MB große SQLite-Datenbank wird mit der App ausgeliefert, beim ersten Start entpackt und dann über einen ContentProvider mit typisierten Contracts gelesen. Datenaktualisierungen kommen als Migrationsskripte, sodass Nutzer einer älteren Version die hundert später hinzugefügten Arten erhalten, ohne ihre eigenen Funde zu verlieren.
Höhe, richtig berechnet
GPS meldet die Höhe über einem mathematischen Ellipsoid, nicht über dem Meeresspiegel. Die Datenbank enthält das Geoidraster EGM96 in einer Auflösung von einem Viertelgrad (rund eine Million Zeilen), und die App sucht die Zelle, in der der Nutzer steht, um das eine in das andere umzurechnen, nachdem sie mehrere Positionsbestimmungen gemittelt hat.
Eigene Oberfläche, kein Framework
Handgeschriebene Views zeichnen das Höhendiagramm und formen die Fotos; Raster- und Elementgrößen werden aus dem Display berechnet, damit das Layout auf Smartphones, Tablets und im Querformat hält. Google Maps für die Funde, Glide für die Bildverarbeitung, Abfragen im Hintergrund für flüssiges Scrollen.
Eine Android-App von 2016 heute neu bauen
Der Code hatte sich nicht verändert. Alles um ihn herum schon.
Das Projekt ließ sich nicht mehr bauen: Die Build-Tools waren veraltet, das Repository, aus dem es Bibliotheken lud, war abgeschaltet, und eine Bibliotheksversion war verschwunden. Die Quellen selbst waren in Ordnung.
- 1
Ein neuer Build um den alten Code
Ein kleines Wrapper-Projekt kompiliert die Originalquellen unverändert an ihrem Platz, mit einer aktuellen Android-Toolchain und Repositories, die es noch gibt.
- 2
Signiert wie das Original
Google Maps antwortet nur einer App, die mit dem Zertifikat signiert ist, für das sie registriert wurde. Die neu gebaute App ist so signiert wie das Original, deshalb laden die Satellitenkarten.
- 3
Zwei Patches, beim Build angewendet
Die Kamera des Emulators sieht nur ein künstliches Wohnzimmer, deshalb hat eine Ersatzkamera stattdessen ein echtes Pflanzenfoto im Bild. Und Wikipedia hat seine mobilen Adressen abgeschafft, wodurch die Seite in der App in den Browser sprang. Beides sind einzeilige Ersetzungen beim Bauen; die Originaldateien bleiben, wie sie sind.
- 4
Per Skript auf einem Emulator aufgezeichnet
Ein Storyboard findet Widgets über den Barrierefreiheitsbaum von Android, sendet echte Touch-Events an den Touchscreen des Emulators, speist GPS-Positionen ein und zeichnet den Bildschirm auf. Jeder Clip und jeder Screenshot hier lässt sich mit einem einzigen Befehl neu erzeugen.
Die Katalogfotos werden in der App ihren Urhebern zugeschrieben. Der gezeigte Fund wurde für die Aufnahme erfunden.

Eine native App kann nicht auf dieser Seite laufen: Die Aufnahmen oben zeigen die App selbst, auf einem Emulator.
Alle Bildschirme
Alle Screenshots im Überblick
StartseiteZwei Türen: der Katalog und die eigenen Kräuter. KatalogAlle Pflanzen in einem horizontal scrollenden Fotoraster. Nach Blütenfarbe filternEine oder mehrere Farben wählen: Wie sah die Blüte aus, die Sie gesehen haben? Jetzt in BlüteNur die Arten, die im aktuellen Monat blühen. Suche nach NamenLive-Filterung nach dem wissenschaftlichen Namen, schon beim Tippen. PflanzensteckbriefTrivialname und wissenschaftlicher Name über einem Foto in voller Breite. BeschreibungBildnachweis, Beschreibung, Verbreitung und Lebensraum. Blütezeit und HöhenlageIm Blütenkalender ist der aktuelle Monat hervorgehoben; der Berg zeigt die Höhenverbreitung. Mehr über die PflanzeWikipedia und Wikimedia Commons, in der App geöffnet, und die Karte der eigenen Funde. FotoansichtMit zwei Fingern ins Pflanzenfoto zoomen. WikipediaDie Seite der Art in der Sprache des Smartphones. Neuer FundDie Position per GPS auf einer Satellitenkarte, bereit zum Speichern mit der Pflanze. Koordinaten und HöheBreitengrad, Längengrad und Datum werden automatisch erfasst; die GPS-Höhe wird gemittelt und mit einem Geoidmodell korrigiert, um die tatsächliche Höhe zu erhalten. Ein Foto aufnehmenIm Demo-Build hat eine Ersatzkamera ein mitgeliefertes Foto im Bild; auf einem Smartphone ist das die Systemkamera. Foto und persönliche NotizenDas gerade aufgenommene Foto und eine freie Notiz zum Fund. Meine KräuterJede Art, die man gefunden hat, mit der neuesten Notiz. Details zu den FundenAlle Funde einer Art: wo, wann, in welcher Höhe, mit ihren Fotos.
Nächste Fallstudie
Automha →