| Name | Description |
|---|---|
| CDisplayEx | Comic reader (.cbr files) |
| GlassesOn | Pupillary distance calculator |
| OpenVPN for Android | Unofficial OpenVPN client |
| prim-ftpd | FTP server |
| ReadEra | Ebook reader |
| Solid Explorer | File manager |
| TOwaste | Find out what waste items go where, what bins to put out when, and where to donate used items or find a City of Toronto drop-off depot |
| VLC Media Player | Multimedia (audio & video) player |
- From the Android TV device: Navigate to Settings > About
- Scroll down to the bottom and click on "Build" and until you see the message "You are now a developer!"
- Navigate to Settings > Developer options
- Enable "USB debugging" and "Wireless debugging"
$ adb devices
List of devices attached
296b55ab device
# It should show a list of devices as above. If it says "unauthorized", then check the android device to see if there's a USB debugging popup.- Navigate to Android Settings -> System - Developer Options
- Enable: USB debugging
- Select: Wireless Debugging -> Pair device with pairing code
- Note the IP address, port number and pairing code
- Run
adb pair IP_ADDRESS:PORT - When prompted, enter the pairing code
# The port number will change everytime "Wireless Debugging" is disabled-then-enabled.
adb connect tv-basement:PORTNewer TVs running Android 14+ bind their ADB server to random ports, which breaks integrations that expect the port to be static 5555. You can use adb-auto-enable to force the ADB server port back to its previous static default of 5555.
adb connect
adb shell
# List all activities/intents
pm list packages |\
sed -e "s/package://" |\
while read x; do cmd package resolve-activity --brief $x |\
tail -n 1 |\
grep -v "No activity found"; \
done | sort
# Find activities from open windows
dumpsys window windows|grep -i activity
# Open Netflix app
am start -a android.intent.action.VIEW -n com.netflix.ninja/.MainActivity
# Open a network stream in VLC
am start -a android.intent.action.VIEW -d rtsp://example.com:8554/birdseye -n org.videolan.vlc/.gui.video.VideoPlayerActivity- Install the Projectivy app from Google Play Store
- Enable ADB Debugging (Required by the "Launcher Manager" app)
- Install the Downloader app from Google Play Store
- Open the Downloader app and paste the URL: https://troypoint.com/troypoint-toolbox/
- Scroll to the bottom and install "Launcher Manager"
- Open Launcher Manager app and select the "Projectivy Launcher"
If Launch Manager doesn't work (such as on a Hisense U88QG), then set Projectivy as the default launcher via the following adb commands:
adb connect IP_ADDRESS:PORT
adb shell
cmd package set-home-activity com.spocky.projengmenu/com.spocky.projengmenu.ui.home.MainActivity
pm disable-user --user 0 com.google.android.apps.tv.launcherx
pm disable-user --user 0 com.google.android.tungsten.setupwraith... then reboot the TV. After rebooting, wifi may be disabled and you may need to re-enter the wifi password.
You can temorarily bind the TV's ADB port to 5555, but thi swon't survive a reboot:
adb connect
adb tcpip 5555... then run the "Launcher Manager" app, and it should be able to connect to ADB.
n.b. Do not enable Projectivy in "Accessibility settings"
Do not install enable "Projectivy Launcher" in Android's accessibility settings as directed by Projectivy, because doing so will trigger the following bug as noted in the first post on the official Projectivy Launcher thread (see, also, this post on Reddit):
long press on volume buttons doesn't work on FengOs : there's a bug on FengOs -> as soon as an accessibility service is enabled (Projectivy Launcher, but also Button Mapper for example), the long press volume buttons doesn't work anymore.
The workaround is to disable "Projectivy Launcher" in Android's accessibility settings, which is fine as long as "Launcher Manager" is configured as described above.
| Name | Description |
|---|---|
| iSponsorBlock | A jailbreak tweak that implements the SponsorBlock API to skip sponsorships in YouTube videos |
| NewPipe | A libre lightweight streaming front-end for Android |
| ReVanced /r/revancedapp/ microG (revanced fork) | YouTube app for Android with no adds, SponsorBlock integration, and video quality settings persistence |
| SmartTube GitHub | An advanced player for set-top boxes and tvs running Android OS |
- Install the Downloader app by AFTVnews
- Open the Downloader app and paste the URL: https://kutt.it/stn_beta
- Follow the prompts to install SmartTube
To launch apps via Home Assitant, configure a dashboard button:
# For Android 12, using media_player.play_media
- type: button
icon: mdi:youtube
name: YouTube
tap_action:
action: perform-action
perform_action: media_player.play_media
data:
media_content_id: YouTube
media_content_type: app
target:
entity_id: media_player.basement_tv
# For Android 14, using remote.turn_on
- type: button
icon: mdi:youtube
name: YouTube
tap_action:
action: perform-action
perform_action: remote.turn_on
data:
activity: "https://www.youtube.com"
target:
entity_id: remote.basement_tv_remote
# Sometimes the URL won't work, but the package name will.
# The package name is the part of the intent before the forward slash.
# e.g. The package name is "com.google.android.youtube.tv" in the intent "com.google.android.youtube.tv/com.google.android.apps.youtube.tv.activity.ShellActivity"
- type: button
icon: mdi:music-circle
name: YouTube Music
tap_action:
action: perform-action
perform_action: remote.turn_on
data:
activity: "com.google.android.youtube.tvmusic"
target:
entity_id: remote.basement_tv_remote
| App | Intent (Android 12) | Activity (Android 14) |
|---|---|---|
| AppleTV | com.apple.atve.sony.appletv/com.apple.atve.sony.appletv.MainActivity | https://tv.apple.com |
| CBC Gem | ca.cbc.android.cbctv/tv.tou.android.home.views.activities.MainActivityTv | https://gem.cbc.ca |
| CraveTV | ca.bellmedia.cravetv/axis.androidtv.sdk.app.MainActivity | https://www.crave.ca |
| Disney+ | com.disney.disneyplus/com.bamtechmedia.dominguez.main.MainActivity | https://www.disneyplus.com |
| NetFlix | com.netflix.ninja/.MainActivity | netflix:// |
| Prime Video | com.amazon.amazonvideo.livingroom/com.amazon.ignition.IgnitionActivity | https://app.primevideo.com |
| SmartTube | com.liskovsoft.smarttubetv.beta/com.liskovsoft.smartyoutubetv2.tv.ui.main.SplashActivity | https://www.youtube.com |
| VLC | org.videolan.vlc/.StartActivity | vlc:// |
| YouTube | com.google.android.youtube.tv/com.google.android.apps.youtube.tv.activity.ShellActivity | https://www.youtube.com |
| YouTube Music | com.google.android.youtube.tvmusic/com.google.android.apps.youtube.tvmusic.activity.MainActivity | https://www.youtube.com/music |