Blog

Behind the App

Entwicklungsgeschichten hinter den Kulissen von Radio Adfree.

CarPlay und Android Auto: Die App fährt mit

Vom Template-Layout bis zum nativen Kotlin-Player: warum die Auto-Integration erst funktionierte, als sie aufhörte, eine Fernbedienung für die App zu sein.

CarPlay Android Auto Kotlin
→

Stream-Aufnahme und Shazam Songerkennung: Wenn der Proxy mehr kann als geplant

Feature-Emergenz: Der Proxy leitet alle Audio-Daten durch – warum nicht mitschneiden? Und wieso nicht auch das ShazamKit damit versorgen? Aus einem Visualizer-Baustein werden zwei neue Features.

Recording ShazamKit Native Module
→

Die Visualizer-Odyssee: Von Fake-Charts zum nativen Audio-Proxy

Fünf Akte: vom geerbten Web-Visualizer über Fake-Daten in Safari und einen iOS-Prototyp bis zum nativen Audio-Proxy, der am Ende immer läuft.

Visualizer Audio Proxy iOS
→

Radio-Apps ohne Werbung 2026 im Vergleich

TuneIn, radio.de PRIME, phonostar, Simple Radio und Radio Adfree im Vergleich: Kosten, App-Werbung, Senderwerbung und kostenlose Alternativen.

Vergleich Werbefrei Radio Apps
→

Eine App ist mehr als eine App – Frontend, Backend, API, Infrastruktur

Unter dem Eisberg: Warum die App ohne Infrastruktur nicht mehr als ein Musik-Player wäre, was das Backend alles macht und warum wir unsere eigene API hosten.

Backend API Infrastructure
→

Wie ein Open-Source-Fork zur nativen Radio-App wurde

Teil 1 der Serie 'Behind the App' - Vom React-Kursprojekt über den Weihnachts-Fork zum ersten Commit der nativen App.

Open Source React Fork
→

Bald verfügbar

Geplante Beiträge der Serie „Behind the App" – Titel und Themen können sich noch ändern.

Bald verfügbar

Der Kampf mit den Metadaten: ICY, Now Playing und warum Radio-Streams keine Podcasts sind

Ein 25 Jahre altes Protokoll auf modernen Geräten: Fallback-Ketten, OGG-Streams und Titel-Parsing im Minenfeld.

ICY Metadata Streaming
Bald verfügbar

Dark Mode ist nicht einfach Schwarz: Die endlose Theme-Geschichte

PaperProvider-Hölle, isolierte React-Trees und „Final (?) theme color fix" – warum der letzte Commit im Repo ein Dark-Mode-Fix ist.

Dark Mode React Native Paper Expo Router
Bald verfügbar

AI-Assisted Development: Wenn Claude, Codex und Cline mitbauen

Cline für Theme-Switching, Codex für Performance-Optimierung, Claude für Swift, Kotlin, Docs und Reviews. Wann trauen, wann prüfen?

AI Claude Codex
Bald verfügbar

Von Google Maps zu MapLibre: Open Source als Befreiung

Radiosender auf der Weltkarte: Erst Google Maps mit API-Key, dann Migration zu MapLibre. Was ging glatt, was nicht?

Maps MapLibre Open Source
Bald verfügbar

Sprachsuche: „Hey App, spiel mir Jazz"

Sender per Sprache suchen statt tippen. Erster Versuch entfernt, zweiter Anlauf erfolgreich.

Speech Recognition STT
Bald verfügbar

Podcasts: Zweimal gebaut, einmal richtig

Ein halbfertiges Feature entfernen braucht Mut – führt aber zum besseren Ergebnis. Kill your darlings.

Podcasts Feature Development
Bald verfügbar

Expo-Upgrades ohne Tränen: SDK 52 → 54 → 55

Expo MCP Server FTW, LinearGradient → CssGradient, React 18 → 19 und die ewige PaperProvider + ExpoRouter-Kombination.

Expo SDK Upgrade React Native
Bald verfügbar

Monetarisierung einer Indie-App: Paywall, RevenueCat und die Premium-Frage

Was ist Premium, was ist kostenlos? RevenueCat als IAP-Abstraktion, Paywall-Crashes auf Android und Webhook-Validierung.

RevenueCat Monetization IAP
Bald verfügbar

Growth Hacking für Indie-Devs: Deep Links, Referrals und der perfekte Share-Moment

Share-Momente im Player, Universal Links, Race Conditions und Referral-Codes über RevenueCat. Growth ohne Marketing-Budget.

Growth Deep Links Referral
Bald verfügbar

Lektion gelernt! Stolpersteine, Bugs, neue Techniken, Tipps und Tricks

Push-Nachrichten, Universal Links, Referrals, Bugs, Verträge, App-Stores und Freigaben. Was ich gelernt habe.

Lesson Learned Universal Links Notifications

Bereit für Radio ohne App-Werbung?

Die kostenlose Radio App ohne Werbebanner, Pop-ups oder Werbe-Tracking. Werbung einzelner Radiosender kann weiterhin Teil der Audiostreams sein.


Hinweis: Die Werbefreiheit bezieht sich auf die App selbst (keine Banner, Pop-ups oder Werbe-Tracking). Auf akustische Werbung innerhalb der Radio-Streams haben wir keinen Einfluss — diese wird direkt vom jeweiligen Sender ausgestrahlt.