Push Updates to Android TV via ADB and CleanYourTV

Updated 2026-10-21

Step-by-step guide for pushing updates via ADB to Android TV boxes

Why push updates via ADB when CleanYourTV exists

Most Android TV owners rely on the built-in firmware check, which only flashes packages approved by the OEM or the Google Play Store. That path is slow and skips the ability to push a security patch straight from a media server. ADB gives you direct access to the box’s filesystem and package store, so you can push an APK to CleanYourTV yourself. The method works on most NVIDIA Shield, Xiaomi MITV Box X, and other Android TV boxes that expose adb over USB or Wi‑Fi.

Prerequisites: get ADB ready on your PC

You need a working ADB connection to the TV. On Windows, macOS, or Linux do the following before anything else:

  1. Install Python 3 (for the adb command wrapper if you plan to script).
  2. Download the correct Linux ARM build of adb and fastboot (ARM64 for Shield, MIUI boxes).
  3. Enable Developer options on the TV and turn on USB debugging.
  4. Connect the TV to the PC with a data cable. The TV’s system UI should prompt you to authorize the PC; confirm it on the box.

Verify the connection:

adb version
adb -helptype

If you see the target device’s serial number after adb devices, you’re connected. If not, try unplugging and re plugging in the cable, or restart the box with adb reboot.

Step 1: push the update APK to CleanYourTV

CleanYourTV’s sideload folder is usually /sdcard/somefolder or /data/immutable/cleanyourtv/updates. The modern CleanYourTV version stores updates under /sdcard/updates/. Use a generic APK host (a file host like file:///sdcard/ is easiest).

Assuming the new update binary is named tv-firmware-beta_v3.apk and is sitting in C:\Users\Me\Downloads:

adb push tv-firmware-beta_v3.apk /sdcard/updates/

To confirm the file arrived, run:

adb shell ls -l /sdcard/updates/

Check that the size matches the original and that tv-firmware-beta_v3.apk is present. If the folder already has older updates, delete them first with adb rm /sdcard/updates/tv-old.apk.

Step 2: install and verify on the TV

adb install -r /sdcard/updates/tv-firmware-beta_v3.apk

-r replaces an existing app, but it also preserves data. For a clean install, omit -r and use adb install /sdcard/updates/tv-firmware-beta_v3.apk. After installation:

adb shell dumpsys package | grep -i name

Confirm the package name matches what the APK advertised (e.g., com.cleanyourtv.TVUpdate). Then check that the update service is now active:

adb shell am start -n com.cleanyourtv.updater.service

The package manager will log the transition. If the service starts without errors, proceed.

Step 3: test and confirm system-level updates

Once the update is running:

adb shell cat /sys/module/TvFirmwareUpdate/state 2>/dev/null || true

Some boxes expose a status file showing the last applied firmware revision. Compare it against the changelog on the CleanYourTV GitHub page. Also open the TV’s Settings → System Update screen to verify that the new build appears at the top of the available options. If it does, the push succeeded.

Trade-offs and common pitfalls

A short checklist you can paste into a note before each push:

By using ADB to push updates directly into CleanYourTV, you bypass the slow manufacturer update cycle, and you can keep an Android TV running a current build far longer than the stock UI’s weekly checks allow.

Related reading: more Android TV notes

Read next