Dit artikel beschrijft hoe je een Android TV-apparaat kunt optimaliseren om advertenties te elimineren en de gebruikerservaring te verbeteren. De auteur stelt een specifieke toolset voor: Projectivy Launcher voor een schoon startscherm, SmartTube als advertentievrij YouTube-alternatief, Wholphin als Jellyfin-client en Button Mapper om de afstandsbediening aan te passen.
De technische implementatie gebeurt via ADB (Android Debug Bridge), waarmee de gebruiker:
- De standaard Google TV-launcher kan uitschakelen.
- De officiële YouTube-app kan verwijderen.
- Toegankelijkheidsservices kan forceren voor betere app-integratie.
- Systeemprestaties kan verbeteren door animaties te versnellen en onnodige bloatware uit te schakelen.
Het resultaat is een systeem zonder promotionele banners en met een interface die volledig is afgestemd op de behoeften van de gebruiker.
Een Android TV zonder advertenties
Google TV, de standaardinterface op de meeste Android TV-apparaten, plaatst een grote banner bovenaan het startscherm om content te promoten die Google wil dat je bekijkt. De 'alleen apps'-modus (Apps only mode) zou het startscherm moeten terugbrengen tot enkel je apps, maar de banner blijft staan. Er is geen instelling om de launcher te wijzigen en YouTube voegt daar eigen advertenties aan toe.
Na het configureren van enkele apparaten in huis, ben ik uitgekomen op een setup zonder advertenties en met een prettigere interface.
De configuratie
De volgende tools vormen de basis van deze setup:
- Projectivy Launcher: vervangt het startscherm. Het toont alleen je apps en is zeer aanpasbaar.
- SmartTube: vervangt YouTube. Deze app bevat geen advertenties, heeft een betere interface en beschikt over ingebouwde SponsorBlock. (Hoewel ik YouTube Premium blijf betalen om creators te ondersteunen, geniet ik veel meer van SmartTube dan van de officiële app).
- Wholphin: mijn voorkeur voor een Jellyfin-client, vanwege de gebruikersinterface en aanpassingsmogelijkheden.
- Button Mapper: hiermee kan de afstandsbediening worden geherprogrammeerd, zodat bijvoorbeeld de YouTube-knop SmartTube opent.
Deze configuratie is getest op twee Chromecasts met Google TV en een Hisense TV, en zou op de meeste Android TV-apparaten moeten werken.
Handleiding
Tip: Je kunt dit artikel aan een AI-agent (zoals Claude Code) geven om je door de installatie te leiden. Deze kan de ADB-commando's voor je uitvoeren en aanpassen aan jouw specifieke apparaat.
Installeer eerst de apps. Projectivy, Wholphin en Button Mapper zijn beschikbaar in de Play Store. SmartTube kan worden 'gesideload' met behulp van Downloader. Voor de rest van de stappen is ADB (Android Debug Bridge) vereist.
Verbinding maken via ADB
Activeer eerst de opties voor ontwikkelaars: ga naar Instellingen → Systeem → Over en klik 7 keer op Android TV OS-versie. Schakel vervolgens in de opties voor ontwikkelaars 'Draadloos debuggen' (Wireless debugging) in en kies voor 'Apparaat koppelen met koppelcode' (Pair device with pairing code):
adb pair <ip>:<pairing-port> <code>
adb mdns services # Om de connectiepoort te vinden
adb connect <ip>:<connect-port>
D=<ip>:<connect-port> # Wordt gebruikt in de onderstaande commando's
Draadloos debuggen werkt alleen via wifi. Als je apparaat dit niet ondersteunt (zoals mijn Hisense TV), schakel dan in plaats daarvan 'USB-debuggen' in en maak verbinding met: adb connect <ip>:5555.
De launcher vervangen
Projectivy heeft een optie om de huidige launcher te overschrijven (Override current launcher), maar het standaard startscherm flitst dan nog steeds kort in beeld. In plaats daarvan kun je de standaard launcher en het pakket dat deze herstelt uitschakelen, om vervolgens Projectivy als start-app in te stellen:
adb -s $D shell pm disable-user --user 0 com.google.android.apps.tv.launcherx
adb -s $D shell pm disable-user --user 0 com.google.android.tungsten.setupwraith
adb -s $D shell cmd package set-home-activity com.spocky.projengmenu/.ui.home.MainActivity
Let op: op sommige televisies regelt de standaard launcher ook het schakelen tussen HDMI-ingangen. Controleer na deze actie of dit nog steeds werkt.
YouTube vervangen
Zodra SmartTube is geïnstalleerd, kun je de officiële YouTube-app verwijderen:
adb -s $D uninstall com.google.android.youtube.tv
Als de app is ingebouwd in de firmware (melding DELETEFAILEDINTERNAL_ERROR), gebruik dan: adb -s $D shell pm uninstall --user 0 com.google.android.youtube.tv.
De afstandsbediening herconfigureren
Zowel Button Mapper als Projectivy vereisen dat hun toegankelijkheidsservices (accessibility services) zijn ingeschakeld. Het volgende commando vervangt de volledige lijst, dus controleer eerst de huidige lijst met adb -s $D shell settings get secure enabledaccessibilityservices en behoud eventuele andere services die je gebruikt:
adb -s $D shell settings put secure enabled_accessibility_services \
'flar2.homebutton/a.i:com.spocky.projengmenu/com.spocky.projengmenu.services.ProjectivyAccessibilityService'
adb -s $D shell settings put secure accessibility_enabled 1
Gebruik voor Projectivy de volledige componentnaam zoals hierboven vermeld. Bij gebruik van de korte vorm (com.spocky.projengmenu/.services...) geeft Projectivy aan dat de service niet is ingeschakeld, terwijl deze wel draait.
Android schakelt toegankelijkheidsservices soms uit. Door Button Mapper de permissie WRITESECURESETTINGS te geven, kan de app zichzelf weer inschakelen. Door de app uit te sluiten van batterijoptimalisatie, blijft deze responsief:
adb -s $D shell pm grant flar2.homebutton android.permission.WRITE_SECURE_SETTINGS
adb -s $D shell dumpsys deviceidle whitelist +flar2.homebutton
Koppel vervolgens in Button Mapper de YouTube-knop aan SmartTube.
Opruimen
Terwijl je verbonden bent, kun je de animaties versnellen en enkele Google-apps uitschakelen die je waarschijnlijk niet gebruikt:
Animaties versnellen:
for k in window_animation_scale transition_animation_scale animator_duration_scale; do
adb -s $D shell settings put global $k 0.75
done
Onnodige apps uitschakelen:
for p in com.google.android.videos com.google.android.play.games \
com.google.android.feedback com.google.android.partnersetup; do
adb -s $D shell pm disable-user --user 0 $p
done
Alle wijzigingen kunnen ongedaan worden gemaakt met adb shell pm enable <package> (of adb shell cmd package install-existing <package> voor YouTube). Schakel draadloos debuggen uit wanneer je klaar bent.
Het resultaat is een systeem zonder banners, zonder advertenties en met een afstandsbediening die de apps opent die je daadwerkelijk gebruikt.
Een Android TV zonder advertenties
Google TV, de standaardinterface op de meeste Android TV-apparaten, plaatst een grote banner bovenaan het startscherm om content te promoten die Google wil dat je bekijkt. De 'alleen apps'-modus (Apps only mode) zou het startscherm moeten terugbrengen tot enkel je apps, maar de banner blijft staan. Er is geen instelling om de launcher te wijzigen en YouTube voegt daar eigen advertenties aan toe.
Na het configureren van enkele apparaten in huis, ben ik uitgekomen op een setup zonder advertenties en met een prettigere interface.
De configuratie
De volgende tools vormen de basis van deze setup:
- Projectivy Launcher: vervangt het startscherm. Het toont alleen je apps en is zeer aanpasbaar.
- SmartTube: vervangt YouTube. Deze app bevat geen advertenties, heeft een betere interface en beschikt over ingebouwde SponsorBlock. (Hoewel ik YouTube Premium blijf betalen om creators te ondersteunen, geniet ik veel meer van SmartTube dan van de officiële app).
- Wholphin: mijn voorkeur voor een Jellyfin-client, vanwege de gebruikersinterface en aanpassingsmogelijkheden.
- Button Mapper: hiermee kan de afstandsbediening worden geherprogrammeerd, zodat bijvoorbeeld de YouTube-knop SmartTube opent.
Deze configuratie is getest op twee Chromecasts met Google TV en een Hisense TV, en zou op de meeste Android TV-apparaten moeten werken.
Handleiding
Tip: Je kunt dit artikel aan een AI-agent (zoals Claude Code) geven om je door de installatie te leiden. Deze kan de ADB-commando's voor je uitvoeren en aanpassen aan jouw specifieke apparaat.
Installeer eerst de apps. Projectivy, Wholphin en Button Mapper zijn beschikbaar in de Play Store. SmartTube kan worden 'gesideload' met behulp van Downloader. Voor de rest van de stappen is ADB (Android Debug Bridge) vereist.
Verbinding maken via ADB
Activeer eerst de opties voor ontwikkelaars: ga naar Instellingen → Systeem → Over en klik 7 keer op Android TV OS-versie. Schakel vervolgens in de opties voor ontwikkelaars 'Draadloos debuggen' (Wireless debugging) in en kies voor 'Apparaat koppelen met koppelcode' (Pair device with pairing code):
adb pair <ip>:<pairing-port> <code>
adb mdns services # Om de connectiepoort te vinden
adb connect <ip>:<connect-port>
D=<ip>:<connect-port> # Wordt gebruikt in de onderstaande commando's
Draadloos debuggen werkt alleen via wifi. Als je apparaat dit niet ondersteunt (zoals mijn Hisense TV), schakel dan in plaats daarvan 'USB-debuggen' in en maak verbinding met: adb connect <ip>:5555.
De launcher vervangen
Projectivy heeft een optie om de huidige launcher te overschrijven (Override current launcher), maar het standaard startscherm flitst dan nog steeds kort in beeld. In plaats daarvan kun je de standaard launcher en het pakket dat deze herstelt uitschakelen, om vervolgens Projectivy als start-app in te stellen:
adb -s $D shell pm disable-user --user 0 com.google.android.apps.tv.launcherx
adb -s $D shell pm disable-user --user 0 com.google.android.tungsten.setupwraith
adb -s $D shell cmd package set-home-activity com.spocky.projengmenu/.ui.home.MainActivity
Let op: op sommige televisies regelt de standaard launcher ook het schakelen tussen HDMI-ingangen. Controleer na deze actie of dit nog steeds werkt.
YouTube vervangen
Zodra SmartTube is geïnstalleerd, kun je de officiële YouTube-app verwijderen:
adb -s $D uninstall com.google.android.youtube.tv
Als de app is ingebouwd in de firmware (melding DELETEFAILEDINTERNAL_ERROR), gebruik dan: adb -s $D shell pm uninstall --user 0 com.google.android.youtube.tv.
De afstandsbediening herconfigureren
Zowel Button Mapper als Projectivy vereisen dat hun toegankelijkheidsservices (accessibility services) zijn ingeschakeld. Het volgende commando vervangt de volledige lijst, dus controleer eerst de huidige lijst met adb -s $D shell settings get secure enabledaccessibilityservices en behoud eventuele andere services die je gebruikt:
adb -s $D shell settings put secure enabled_accessibility_services \
'flar2.homebutton/a.i:com.spocky.projengmenu/com.spocky.projengmenu.services.ProjectivyAccessibilityService'
adb -s $D shell settings put secure accessibility_enabled 1
Gebruik voor Projectivy de volledige componentnaam zoals hierboven vermeld. Bij gebruik van de korte vorm (com.spocky.projengmenu/.services...) geeft Projectivy aan dat de service niet is ingeschakeld, terwijl deze wel draait.
Android schakelt toegankelijkheidsservices soms uit. Door Button Mapper de permissie WRITESECURESETTINGS te geven, kan de app zichzelf weer inschakelen. Door de app uit te sluiten van batterijoptimalisatie, blijft deze responsief:
adb -s $D shell pm grant flar2.homebutton android.permission.WRITE_SECURE_SETTINGS
adb -s $D shell dumpsys deviceidle whitelist +flar2.homebutton
Koppel vervolgens in Button Mapper de YouTube-knop aan SmartTube.
Opruimen
Terwijl je verbonden bent, kun je de animaties versnellen en enkele Google-apps uitschakelen die je waarschijnlijk niet gebruikt:
Animaties versnellen:
for k in window_animation_scale transition_animation_scale animator_duration_scale; do
adb -s $D shell settings put global $k 0.75
done
Onnodige apps uitschakelen:
for p in com.google.android.videos com.google.android.play.games \
com.google.android.feedback com.google.android.partnersetup; do
adb -s $D shell pm disable-user --user 0 $p
done
Alle wijzigingen kunnen ongedaan worden gemaakt met adb shell pm enable <package> (of adb shell cmd package install-existing <package> voor YouTube). Schakel draadloos debuggen uit wanneer je klaar bent.
Het resultaat is een systeem zonder banners, zonder advertenties en met een afstandsbediening die de apps opent die je daadwerkelijk gebruikt.