An ad-free Android TV — Cretezy

I like Android TV. It runs each app I care about, it’s low-cost on a Chromecast, and it’s constructed into loads of TVs. What I don’t like is adverts.
Google TV, the default interface on most Android TV gadgets, places a big banner on the high of the house display selling no matter Google desires you to look at subsequent. Apps solely mode is meant to strip the house display all the way down to your apps, however the banner stays. There’s no setting to alter the launcher, and YouTube provides its personal adverts on high.
Before: Google TV, in Apps solely mode
After organising a couple of gadgets round the home, I landed on a setup with no adverts in any respect, and a nicer interface to go along with it.
The setup
- Projectivy Launcher replaces the house display. It reveals your apps and nothing else, and it’s very customizable.
- SmartTube replaces YouTube, with no adverts, a greater interface, and SponsorBlock inbuilt. I nonetheless pay for YouTube Premium to assist creators, however I vastly choose SmartTube to the official app.
- Wholphin is my most popular Jellyfin consumer, for its UI and customization choices.
- Button Mapper remaps the distant, so the YouTube button opens SmartTube.

After: Projectivy Launcher

SmartTube, blurred
I’ve set this up on two Chromecasts with Google TV and a Hisense TV, and it ought to work on most Android TV gadgets.
Tutorial
Tip: Hand this text to an AI agent (like Claude Code) and have it information you thru the setup. It can run the ADB instructions for you and adapt them to your machine.
Install the apps first. Projectivy, Wholphin, and Button Mapper are on the Play Store, and SmartTube may be sideloaded with Downloader. The relaxation wants ADB.
Connecting ADB
Enable Developer choices by clicking Settings → System → About → Android TV OS construct 7 instances. Then, in Developer choices, allow Wireless debugging and select Pair machine with pairing code:
adb pair <ip>:<pairing-port> <code>
adb mdns providers # Find the join port
adb join <ip>:<connect-port>
D=<ip>:<connect-port> # Used within the instructions beneath
Wireless debugging solely works over Wi-Fi. If your machine doesn’t have it (like my Hisense TV), allow USB debugging as a substitute and join with adb join .
Replacing the launcher
Projectivy has an Override present launcher possibility, however the inventory residence display nonetheless flashes earlier than it. Instead, disable the inventory launcher and the package deal that restores it, then set Projectivy as the house app:
adb -s $D shell pm disable-user --user 0 com.google.android.apps.television.launcherx
adb -s $D shell pm disable-user --user 0 com.google.android.tungsten.setupwraith
adb -s $D shell cmd package deal set-home-activity com.spocky.projengmenu/.ui.residence.MainActivity
On a TV, the inventory launcher might also deal with switching HDMI inputs, so test that also works afterward.
Replacing YouTube
Once SmartTube is about up, take away the official app:
adb -s $D uninstall com.google.android.youtube.television
If it’s constructed into the firmware (DELETE_FAILED_INTERNAL_ERROR), use adb -s $D shell pm uninstall --user 0 com.google.android.youtube.television as a substitute.
Remapping the distant
Button Mapper and Projectivy each want their accessibility providers enabled. This replaces the entire listing, so test the present one first with adb -s $D shell settings get safe enabled_accessibility_services and hold the rest you employ:
adb -s $D shell settings put safe enabled_accessibility_services
'flar2.homebutton/a.i:com.spocky.projengmenu/com.spocky.projengmenu.providers.ProjectivyAccessibilityService'
adb -s $D shell settings put safe accessibility_enabled 1
Use Projectivy’s full part title, as above. With the quick type (
com.spocky.projengmenu/.providers...), Projectivy reveals Enabled: No regardless that the service is working.
Android generally turns accessibility providers off. Granting Button Mapper WRITE_SECURE_SETTINGS lets it flip itself again on, and exempting it from battery optimization retains it responsive:
adb -s $D shell pm grant flar2.homebutton android.permission.WRITE_SECURE_SETTINGS
adb -s $D shell dumpsys deviceidle whitelist +flar2.homebutton
Then, in Button Mapper, map the YouTube button to SmartTube.
Cleaning up
While you’re linked, velocity up animations and disable some Google apps you most likely received’t use:
for ok in window_animation_scale transition_animation_scale animator_duration_scale; do
adb -s $D shell settings put world $ok 0.75
achieved
for p in com.google.android.movies com.google.android.play.video games
com.google.android.suggestions com.google.android.partnersetup; do
adb -s $D shell pm disable-user --user 0 $p
achieved
Everything may be undone with adb shell pm allow (or adb shell cmd package deal install-existing for YouTube). Turn Wireless debugging off whenever you’re achieved.
That’s it: no banner, no adverts, and a distant that opens the apps you really use.
