How to Install APKs on Android TV and Fire TV with ADB
Sideload an APK onto Android TV, Google TV or Fire TV over the network with adb install or from the browser, and fix NO_MATCHING_ABIS and other common errors.
Sideloading means installing an app from an APK file instead of from the store. On a TV it is the usual way to test your own TV app, install an internal build, or add a tool that is not in the TV's store. With ADB it takes one command, and it does not need a USB stick or a file manager app on the TV.
Before you start
Connect to the TV with ADB first. The steps for Android TV, Google TV and Fire TV are in how to control an Android TV with ADB. In short: turn on Developer options and ADB debugging, find the TV's IP address, run adb connect <ip>:5555 and accept the dialog on the TV.
Installing over ADB does not need the "Install unknown apps" or "Apps from Unknown Sources" setting. That setting is only for installing from an app on the TV, such as a downloader or a file manager.
Install with adb
adb install my-tv-app.apkSuccess means the app is installed. Useful options:
| Option | What it does |
|---|---|
-r | Replace an installed app and keep its data |
-d | Allow a lower version code than the installed one (debuggable builds) |
-g | Grant all runtime permissions listed in the manifest |
Over Wi-Fi a large APK takes noticeably longer than over a cable. A 100 MB file can take a minute or more on a slow network, so be patient before you assume it hung.
Install from the browser with ADBKit
- Start the ADBKit agent and connect to the TV with TCP/IP in the ADBKit workspace.
- Open Install APK, choose the file from your computer and click Install.
- Tick Replace existing app to update an app that is already installed.
The result shows as installed or failed, with the reason Android gave. The APK goes from your computer straight to the TV. It is never uploaded anywhere else.
Open the app you installed
TV launchers only show apps that declare a TV ("Leanback") launcher entry. A phone app installed on a TV usually works but does not appear on the home screen. You can still open it:
- Android TV / Google TV: Settings › Apps › See all apps, select the app, then Open
- Fire TV: Settings › Applications › Manage Installed Applications, select the app, then Launch application
- From ADB:
adb shell monkey -p com.example.app 1
If you build the app yourself, add an activity with the android.intent.category.LEANBACK_LAUNCHER category and a banner image so it shows up on the TV home screen.
Common errors
INSTALL_FAILED_NO_MATCHING_ABIS
The APK contains native code for a processor type the TV does not run. Many TVs and streaming sticks run a 32-bit Android even on a 64-bit chip. Check what the TV supports:
adb shell getprop ro.product.cpu.abilistIf it lists only armeabi-v7a,armeabi, you need an APK built for armeabi-v7a (or a universal APK), not an arm64-v8a-only file.
INSTALL_FAILED_OLDER_SDK
The app needs a newer Android version than the TV has. Compare the app's minSdkVersion with adb shell getprop ro.build.version.sdk. Many TVs stay on an old Android release for years.
INSTALL_FAILED_UPDATE_INCOMPATIBLE
An app with the same package name but a different signing key is already installed, for example the store version of an app you are testing. Uninstall it first with adb uninstall com.example.app. This deletes that app's data.
INSTALL_FAILED_INSUFFICIENT_STORAGE
TVs often have little free space. Check with adb shell df -h /data, clear the cache of large apps in Settings or uninstall what you no longer use.
The app installs but needs a touchscreen
Apps that declare android.hardware.touchscreen as required may install over ADB but behave badly, because a remote is not a touchscreen. In your own app, mark touchscreen as not required and make every screen work with the D-pad.
"Device unauthorized" or "Connection refused"
These are connection problems, not install problems. Reconnect and accept the dialog on the TV, or check that ADB debugging is still on. See the troubleshooting list in how to control an Android TV with ADB.
Uninstall
adb uninstall com.example.appAdd -k to keep the app's data and cache.
Be careful with APK sources
An APK can do anything an app can do on your TV, including watching what you stream and what you type. Only install APKs you built yourself or downloaded from the developer's official site. Turn ADB debugging off when you are done if the TV stays on a network you share.
For installing on phones and tablets, the general guide is how to install an APK with ADB.