An ad-free Android TV

An ad-free Android TV

I like Android TV. It runs every app I care about, it’s cheap on a Chromecast, and it’s built into plenty of TVs. What I don’t like is ads. Here’s my setup for ad-free watching on my devices.

我喜欢 Android TV。它能运行我关心的所有应用程序,在 Chromecast 上使用很便宜,而且内置于许多电视中。我不喜欢的是广告。以下是我在设备上实现无广告观看的设置。

Google TV, the default interface on most Android TV devices, puts a large banner at the top of the home screen promoting whatever Google wants you to watch next, often from apps you don’t even use. Apps only mode is supposed to strip the home screen down to your apps, but the banner stays, and there’s no setting to turn it off.

Google TV 是大多数 Android TV 设备上的默认界面,它在主屏幕顶部放置了一个巨大的横幅,推广 Google 希望你观看的任何内容,通常来自你甚至从未使用过的应用程序。“仅限应用”模式本应将主屏幕精简为仅显示你的应用程序,但横幅依然存在,且没有设置可以将其关闭。

Before: Google TV, in Apps only mode

之前:Google TV,“仅限应用”模式

After setting up a few devices around the house, I landed on a setup with no ads at all, and a nicer interface to go with it.

在家里设置了几台设备后,我最终确定了一种完全没有广告的设置,并配有一个更好的界面。

After: Projectivy Launcher

之后:Projectivy 启动器

I’ve set this up on two Chromecasts with Google TV and a Hisense TV, and it should work on most Android TV devices.

我已经在两台搭载 Google TV 的 Chromecast 和一台海信电视上完成了此设置,它应该适用于大多数 Android TV 设备。

Tip: For ads in other apps, and the TV’s own tracking, also run Pi-hole on your network. It blocks ad and tracking domains at the DNS level, for every device in the house, not just the TV.

提示:对于其他应用程序中的广告以及电视自身的追踪,还可以在你的网络上运行 Pi-hole。它可以在 DNS 层面拦截广告和追踪域名,适用于家中的所有设备,而不仅仅是电视。

If you’d rather keep the stock launcher, blocking androidtvwatsonfe-pa.googleapis.com in Pi-hole (or your router’s DNS) reportedly hides its banner. You might have to restart the device or clear the launcher’s cache for it to take effect.

如果你更愿意保留原生启动器,据报道,在 Pi-hole(或你的路由器 DNS)中屏蔽 androidtvwatsonfe-pa.googleapis.com 可以隐藏其横幅。你可能需要重启设备或清除启动器的缓存才能生效。

Without Pi-hole, you can point the TV’s Private DNS at an ad-blocking resolver like AdGuard DNS instead, once ADB is connected (see below):

如果没有 Pi-hole,一旦连接了 ADB(见下文),你可以将电视的专用 DNS 指向像 AdGuard DNS 这样的广告拦截解析器:

Tip: Hand this article to an AI agent and have it guide you through the setup. It can adapt the ADB commands to your device and run them for you, so review each one before approving it.

提示:将这篇文章交给 AI 代理,让它引导你完成设置。它可以根据你的设备调整 ADB 命令并为你运行,因此在批准每条命令之前请务必进行审查。

Everything here is done with ADB, so start by connecting it.

这里的一切都是通过 ADB 完成的,所以先连接它。

Enable Developer options by clicking Settings → System → About → Android TV OS build 7 times. Then, in Developer options, enable Wireless debugging and choose Pair device with pairing code:

通过点击“设置”→“系统”→“关于”→“Android TV OS 版本”7 次来启用开发者选项。然后,在开发者选项中,启用无线调试并选择“使用配对码配对设备”:

Wireless debugging only works over Wi-Fi. If your device doesn’t have it (like my Hisense TV), enable USB debugging instead and connect with adb connect :5555.

无线调试仅适用于 Wi-Fi。如果你的设备没有此功能(比如我的海信电视),请改为启用 USB 调试,并使用 adb connect :5555 进行连接。

Projectivy, Wholphin, and Button Mapper are on the Play Store. ADB can’t install from the Play Store directly, but it can open each app’s page on the TV, so you just click Install:

Projectivy、Wholphin 和 Button Mapper 都在 Play 商店中。ADB 无法直接从 Play 商店安装,但它可以打开电视上每个应用程序的页面,因此你只需点击“安装”即可:

SmartTube isn’t on the Play Store, so download the latest APK from GitHub and install it:

SmartTube 不在 Play 商店中,因此请从 GitHub 下载最新的 APK 并安装:

You can also sideload it on the TV with Downloader.

你也可以使用 Downloader 在电视上侧载它。

Projectivy has an Override current launcher option, but the stock home screen still flashes before it. Instead, set Projectivy as the home app, then disable the stock launcher and the package that restores it:

Projectivy 有一个“覆盖当前启动器”选项,但原生主屏幕在它之前仍会闪烁。建议将 Projectivy 设置为默认主页应用,然后禁用原生启动器及其恢复包:

Setting the home app first matters. On some devices, disabling setupwraith can also forget the saved Wi-Fi network, so keep a remote handy to reconnect.

首先设置主页应用很重要。在某些设备上,禁用 setupwraith 可能会导致忘记已保存的 Wi-Fi 网络,因此请准备好遥控器以便重新连接。

On a TV, the stock launcher may also handle switching HDMI inputs, so check that still works afterward.

在电视上,原生启动器可能还负责切换 HDMI 输入,因此请检查之后该功能是否仍然有效。

Once SmartTube is set up, remove the official app:

SmartTube 设置完成后,移除官方应用程序:

If it’s built into the firmware (DELETE_FAILED_INTERNAL_ERROR), use adb -s $D shell pm uninstall —user 0 com.google.android.youtube.tv instead.

如果它是内置在固件中的(出现 DELETE_FAILED_INTERNAL_ERROR 错误),请改用 adb -s $D shell pm uninstall —user 0 com.google.android.youtube.tv。

Button Mapper and Projectivy both need their accessibility services enabled. This replaces the whole list, so check the current one first with adb -s $D shell settings get secure enabled_accessibility_services and keep anything else you use:

Button Mapper 和 Projectivy 都需要启用其辅助功能服务。这会替换整个列表,因此请先使用 adb -s $D shell settings get secure enabled_accessibility_services 检查当前的列表,并保留你使用的其他任何服务:

Android sometimes turns accessibility services off. Granting Button Mapper WRITE_SECURE_SETTINGS lets it turn itself back on, and exempting it from battery optimization keeps it responsive:

Android 有时会关闭辅助功能服务。授予 Button Mapper WRITE_SECURE_SETTINGS 权限可以让它自动重新开启,并将其从电池优化中排除可以保持其响应速度:

Then, in Button Mapper, map the YouTube button to SmartTube.

然后,在 Button Mapper 中,将 YouTube 按钮映射到 SmartTube。

You can also speed up animations to make it snappier:

你还可以加快动画速度,使其操作更灵敏:

And disable some Google apps and services you probably won’t use. Skip any you do use, and ignore errors for packages your device doesn’t have:

并禁用一些你可能不会使用的 Google 应用程序和服务。跳过你正在使用的任何应用,并忽略设备上不存在的包所产生的错误:

For additional debloating, cleanyourtv has lists for many TVs, covering manufacturer apps, ad services, and telemetry.

如需进一步精简,cleanyourtv 提供了许多电视的列表,涵盖了制造商应用程序、广告服务和遥测数据。

Everything can be undone with adb shell pm enable (or adb shell cmd package install-existing for YouTube). Turn Wireless debugging (or USB debugging) off when you’re done, since an open ADB port can let other devices on your network connect.

所有操作都可以通过 adb shell pm enable (或 YouTube 的 adb shell cmd package install-existing )撤销。完成后请关闭无线调试(或 USB 调试),因为开放的 ADB 端口可能会让网络上的其他设备连接。

On a TV, also check the picture settings. Switch to Filmmaker Mode (or a neutral mode like Movie or Cinema) and turn off most of the image processing, like motion smoothing, noise reduction, and dynamic contrast. You might have to tweak it a bit to suit your room and taste.

在电视上,还要检查图像设置。切换到“电影制作人模式”(或电影/影院等中性模式),并关闭大多数图像处理功能,如运动平滑、降噪和动态对比度。你可能需要稍微调整一下以适应你的房间和品味。

That’s it: no banner, no ads, and a remote that opens the apps you actually use.

就是这样:没有横幅,没有广告,遥控器也能打开你真正使用的应用程序。

Update 2026-10-20: Thank you for the replies on Hacker News! I’ve made some changes:

更新 2026-10-20:感谢 Hacker News 上的回复!我做了一些更改:

Hello! My name is Cretezy and I am a software developer. I write about programming, personal projects, and more.

你好!我叫 Cretezy,是一名软件开发人员。我撰写关于编程、个人项目等内容。