mirror of
https://github.com/Gathin23/cleanyourtv.git
synced 2026-10-27 19:54:45 +00:00
README: tables, counts and card after Round Y (293 TV models, 83 brands, 28 languages, about 517 KB)
This commit is contained in:
1 parent
e28da2a331
commit
575d73f0f3
8 files changed
+14
-12
No files matched your search
@@ -1,7 +1,7 @@
|
||||
# How CleanYourTV PRs are reviewed
|
||||
|
||||
CleanYourTV (Gathin23/cleanyourtv) is a prompt plus tools that debloat Android TV / Google TV / Fire TV over
|
||||
ADB and a tiny native launcher (`launcher/`, plain Java, ~515 KB, for 1 GB TVs). Contributors mostly add
|
||||
ADB and a tiny native launcher (`launcher/`, plain Java, ~517 KB, for 1 GB TVs). Contributors mostly add
|
||||
tested TV lists under `examples/<tv>/`, translations, docs, small launcher options, themes, add-ons and tools.
|
||||
|
||||
## The policy: a small core plus a well-indexed hub
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="docs/PRESS.md"><img src="docs/card.jpg" alt="292 TV models · 83 brands · 28 languages · 515 KB launcher. Featured in TechCrunch, TechRadar, Tom's Guide, Mashable, Android Authority, XDA, FlatpanelsHD, It's FOSS, Phandroid, GIGAZINE, Xataka, WinFuture, Frandroid, Macitynet, Techaeris, TechPP and 180 more: 196 articles from 32 countries. Before: stock Google TV home with a sponsored ad. After: the Clean Your TV launcher." width="800"></a>
|
||||
<a href="docs/PRESS.md"><img src="docs/card.jpg" alt="293 TV models · 83 brands · 28 languages · 517 KB launcher. Featured in TechCrunch, TechRadar, Tom's Guide, Mashable, Android Authority, XDA, FlatpanelsHD, It's FOSS, Phandroid, GIGAZINE, Xataka, WinFuture, Frandroid, Macitynet, Techaeris, TechPP and 180 more: 196 articles from 32 countries. Before: stock Google TV home with a sponsored ad. After: the Clean Your TV launcher." width="800"></a>
|
||||
</p>
|
||||
|
||||
**The viral tweet:** [x.com/gathint/status/2111379569030939102](https://x.com/gathint/status/2111379569030939102)
|
||||
@@ -117,11 +117,11 @@ Tested lists from contributors, one folder per model in [`examples/`](examples/)
|
||||
**TCL** 64 · **Sony** 37 · **Xiaomi** 31 · **Philips** 15 · **Hisense** 10 · **Skyworth** 9 · **Amazon Fire TV** 7 ·
|
||||
**BenQ** 4 · **OnePlus** 4 · **Panasonic** 4 · **Thomson** 4 · **Google** 3 · **Haier** 3 · **JVC** 3 · **SHARP** 3 ·
|
||||
**Vu** 3 · **CHiQ** 2 · **FFalcon** 2 · **Hitachi** 2 · **Kalley** 2 · **Kogan** 2 · **Motorola** 2 · **Nokia** 2 ·
|
||||
**NVIDIA Shield** 2 · **onn** 2 · **RCA** 2 · **Redmi** 2 · **Sankey** 2 · **Toshiba** 2 · **Vidda** 2 ·
|
||||
**NVIDIA Shield** 2 · **onn** 2 · **RCA** 2 · **Redmi** 2 · **RockTek** 2 · **Sankey** 2 · **Toshiba** 2 · **Vidda** 2 ·
|
||||
Acer · AiPro2K · AIWA · AQUA · Artel · ASUS · Beko · Caxium · Cecotec · Challenger · Compac · Dcolor · Dialog · EKO ·
|
||||
Freebox · Grundig · INCLO · Insignia Fire TV · Karbonn · KTC · Liberton · Lumio · Master-G · MTC · Noblex · OK. ·
|
||||
Panavox · PEAQ · Polytron · PRISM+ · RockTek · SANYO · Sber · Super General · Tele System · TiVo · Tornado · Turkcell ·
|
||||
Tuvio · Verizon · Vision ·
|
||||
Panavox · PEAQ · Polytron · PRISM+ · SANYO · Sber · Super General · Tele System · TiVo · Tornado · Turkcell · Tuvio ·
|
||||
Verizon · Vision ·
|
||||
Anker Nebula, BYINTEK, Epson, Formovie, Gadnic, HOTACK, JMGO, Magcubic, Portronics, Stellamore, Wanbo and XGIMI projectors
|
||||
|
||||
<!-- tv-brands:end -->
|
||||
@@ -252,6 +252,7 @@ Anker Nebula, BYINTEK, Epson, Formovie, Gadnic, HOTACK, JMGO, Magcubic, Portroni
|
||||
| Redmi TV (MiTV-ANTL0, starwars) | Android 5.1.1 (not Android TV) |
|
||||
| Redmi TV (MiTV-MFTP0, alita), China firmware 23.2.10.6129 | Android TV 9 (CN build) |
|
||||
| RockTek GB1 | Google TV 14 |
|
||||
| RockTek GX1 (HPR3A1325_4K) | Google TV 14 |
|
||||
| Sankey SMART2KTVSE (Whale OS, SiliconPlayer am30bm) | Android TV 13 |
|
||||
| Sankey SMART_TV (CVTE, HiSilicon Hi3751V350, 1 GB) | Android 12 |
|
||||
| SANYO ATV R2 (SCBC, Realtek RTD285O) | Android TV 9 |
|
||||
@@ -471,7 +472,7 @@ tools/theme.sh themes/aurora # push a theme; --r
|
||||
| [`tools/flamechart.py`](tools/flamechart.py) | Draws a before/after flame chart from those traces, for a pull request: one lane per thread on a shared time scale, the work a change targets in magenta with its total. Optional, like the trace tools. [Guide](tools/flamechart.md). |
|
||||
| [`tools/screendiff.py`](tools/screendiff.py) | Compares a before and an after screenshot pixel by pixel, leaving out the clock or anything you mask, and writes the pair with your Wi-Fi name blurred. Optional, like the trace tools. [Guide](tools/screendiff.md). |
|
||||
| [`tools/race_calendar.py`](tools/race_calendar.py) | Writes this season's F1 calendar into a theme for race-weekend mode, from the free Jolpica API. |
|
||||
| [`launcher/build-and-install.sh`](launcher/build-and-install.sh) | Builds a shrunk release (about 515 KB), installs it, switches Home, and rolls back if Home does not land on it. |
|
||||
| [`launcher/build-and-install.sh`](launcher/build-and-install.sh) | Builds a shrunk release (about 517 KB), installs it, switches Home, and rolls back if Home does not land on it. |
|
||||
|
||||
The scripts never leave the TV without a Home app: they only disable a stock launcher they recognise,
|
||||
and skip the Home app in a list until another launcher answers HOME. Details below.
|
||||
@@ -543,7 +544,7 @@ apps), which is why the report names that loss per package instead of calling it
|
||||
|
||||
## The launcher
|
||||
|
||||
A small native home screen for Android TV: **about 515 KB**, plain Java, built for TVs with 1 GB of RAM.
|
||||
A small native home screen for Android TV: **about 517 KB**, plain Java, built for TVs with 1 GB of RAM.
|
||||
No blur, no video, no network permission, no background services.
|
||||
|
||||
The **TV** needs Android 8.0 (API 26) or newer: `minSdk` is a compile-time floor in
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 180 KiB After Width: | Height: | Size: 180 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 23 KiB |
@@ -28,7 +28,7 @@
|
||||
7. Check the size gate before you push. A language's strings ship in the release APK, and that APK has to
|
||||
stay under 589,824 B (576 KB): `launcher/app/build/outputs/apk/release/app-release.apk`, measured with
|
||||
`stat -c %s` on Linux or `stat -f %z` on macOS, and checked by the "Launcher build and unit tests" job
|
||||
on every pull request. `README.md` quotes the launcher at about 515 KB, so a full language can be the
|
||||
on every pull request. `README.md` quotes the launcher at about 517 KB, so a full language can be the
|
||||
difference between green and a failed build. A language that does not fit is a maintainer decision, not
|
||||
something to land by dropping strings ([#1271](https://github.com/Gathin23/cleanyourtv/issues/1271)).
|
||||
8. Build the launcher, set the TV's language (Android 13+: `tools/tv.py 'cmd locale set-app-locales com.gathin.tvhome --locales <tag>'`)
|
||||
|
||||
+3
-2
@@ -46,7 +46,7 @@ on that firmware, grouped and commented. These are starting points: comment out
|
||||
| `formovie-laser-4k-hanlla/` | Formovie Laser 4K projector (hanlla, MediaTek T31 / m7632, 1.8 GB) | Android TV 14 | First Formovie list, kept light at the owner's request: Google feedback and consent, partnersetup RLZ pings, Formovie's Play auto-installer, tvrecommendations and Ambient Mode; no Formovie ad or content service on this build; projector manager (focus, keystone, BLE remote), Dolby audio, input/source app, BT remote pairing, Launch Board and User Manual kept; YouTube, Prime Video, Chromecast, Assistant and OTA kept by choice; classic tvlauncher, built-in Ethernet |
|
||||
| `freebox-player-pop/` | Freebox Player POP (Free, fbx8am, Amlogic), IPTV/DVB-T box | Android TV 10 | Free stats, Google feedback and recommendations, partner auto-installs, NES/CTC factory tests; French catch-up, kids and Free apps off by choice, Arte/Spotify/Stremio kept; OQEE is the stock home (HOME priority 3); Chromecast must stay for Spotify Connect; AdGuard DNS blocks pixel.spotify.com and breaks Spotify; 2 GB |
|
||||
| `gadnic-proj100w/` | Gadnic PROJ100W projector (built-in Google TV stick: SkyworthDigital YYT, Amlogic HP46B), Argentina | Google TV 14 | Same stick/firmware family as Wanbo X5 Pro and BYINTEK T5 Max; telemetry, Privacy Sandbox, xCPE, factory test, voice assistant and TalkBack off; setupwraith + launcherx disabled after a Wi-Fi forget/rejoin (see header); DreamOS launcher installed, screensaver handed to the launcher's clock; wireless-debugging pairing, ADB port resets every reboot |
|
||||
| `google-chromecast-gtv-4k/` | Google Chromecast with Google TV 4K (sabrina) | Google TV 14 | Google telemetry and ad services, ambient mode, launcherx + setupwraith; wireless-debugging pairing, YouTube button remap; casting needs setupwraith (its CastInfoProvider holds the receiver's credentials) |
|
||||
| `google-chromecast-gtv-4k/` | Google Chromecast with Google TV 4K (sabrina) | Google TV 14 | Google telemetry and ad services, ambient mode, launcherx + setupwraith; wireless-debugging pairing, YouTube button remap; casting needs setupwraith (its CastInfoProvider holds the receiver's credentials): [debloat-keep-cast.txt](google-chromecast-gtv-4k/debloat-keep-cast.txt) keeps it and the stock home |
|
||||
| `google-chromecast-gtv-hd/` | Google Chromecast with Google TV HD (boreal) | Google TV 14 | Same build as the 4K: Google telemetry and ad services, ambient mode, launcherx + setupwraith; casting needs setupwraith (Cast Fix re-provisions the receiver at boot), and setupwraith owns Wi-Fi joined during setup; 1.4 GB, tight storage |
|
||||
| `google-tv-streamer-4k-kirkwood/` | Google TV Streamer 4K (kirkwood, GZRNL) | Google TV 14 | Google telemetry and ad services; setupwraith must go (package level: its RecoveryActivity claims HOME and crash-loops system_server), so the cast credentials have to be re-provisioned with an enable/wait/disable ritual after every reboot; the launcher HOME intent-filter priority is ignored on this build; wireless-debugging pairing, YouTube button remap |
|
||||
| `grundig-kunyang/` | Grundig Android UHD TV (Arçelik, GxGrNM, kunyang, MediaTek), Turkey | Android TV 14 | First Arçelik list: Grundig Channel (Hoppr ad tiles), HotelService, TV Care Hub, partner auto-installs, Privacy Sandbox, Google feedback; Assistant, AirScreen/AirCast, Kids, Play Movies/Games off by choice, Chromecast kept; `fusion.android.tv.demo` handles the Input key, keep it; setupwraith claims no HOME; launcher works, every remote button works with no key service; AdGuard DNS validates; 1.8 GB, +290 MB available; reboot-checked |
|
||||
@@ -54,7 +54,7 @@ on that firmware, grouped and commented. These are starting points: comment out
|
||||
| `haier-h32s80efx/` | Haier H32S80EFX (MatrixTV CE, HRT56EU, deto, MediaTek), Thailand | Google TV 14 | Haier hOn IoT and smart-device services, Haier tab and Kinopoisk promo, retail demo, cleaner; YouTube Music and Google TV app off by choice; setupwraith must go (RecoveryActivity component refused); Live TV must target the digital tuner, TrueID also claims channel intents |
|
||||
| `haier-hr9216eu/` | Haier MatrixTV GE (HR9216EU, haeundae, MediaTek), EU | Google TV 14 | Haier IoT and content apps, Zeasn launcher, cleaner, e-manual, Anoki ACR opt-in, partner rows, retail demo; YouTube Music and Ambient off by choice; Netflix re-enabled from factory-disabled and docked; setupwraith owns the saved Wi-Fi until forget and re-join, then goes with launcherx; the firmware re-enables oemtabprovider and the Zeasn launcher at every boot; the gear button is KEY_UNKNOWN scancode 240 (add it to config.xml locally), HOME_KEY_SERVICE trades the volume ramp; wireless debugging can switch itself off at boot; config.json has the dock |
|
||||
| `hisense-65d62qh/` | Hisense 65D62QH (VIDAA_TV, MediaTek MT9653), China | Android TV 11 | China JuUI 9.0.10.845, same build as `vidda-mt9653/`: ad SDK/service, home operator rows and weather feed, telemetry, push channel, retail/hotel/demo and preloaded content, the 拍信创意 screensaver, and the AOSP leftovers this build leaves enabled; debloat only, stock Home `com.jamdeo.tv.vod` and Live TV kept, OTA kept; 26 packages; a USB HID freeze seen once with a second accessibility service enabled, fine after a rebuild — see [the device notes](../docs/devices/hisense-65d62qh.md) |
|
||||
| `hisense-e5q-pro/` | Hisense E5Q Pro (VIDAA_TV, MediaTek MT9653), China | Android TV 11 | China VIDAA firmware, the conservative subset of `vidda-mt9653/` (same build): ad SDK/service, push, telemetry, store/hotel/demo and preloaded content; stock launcher `com.jamdeo.tv.vod` and Live TV `com.jamdeo.tv.livetv` kept, OTA kept; 18 packages |
|
||||
| `hisense-e5q-pro/` | Hisense E5Q Pro (VIDAA_TV, MediaTek MT9653), China | Android TV 11 | China VIDAA firmware, the conservative subset of `vidda-mt9653/` (same build): ad SDK/service, push, telemetry, store/hotel/demo and preloaded content; stock launcher `com.jamdeo.tv.vod` and Live TV `com.jamdeo.tv.livetv` kept, OTA kept; 18 packages; [55E5Q-PRO ADB and factory-mode guide](hisense-e5q-pro/README.md) |
|
||||
| `hisense-fire-tv-aftcibfbd1/` | Hisense Fire TV (AFTCIBFBD1, coyote, MediaTek), US | Fire OS 8.0 / Android 11 | First Fire OS 8 TV: Amazon ACR, ad/recommendation feeders, advertising ID, Shopping, demo, tutorials, telemetry; Alexa, AirPlay, Miracast and preloads (Tubi, Music/Photos, miniTV, Naatyam, games, Ambient) off by choice; Alexa voice (vizzini) is re-enabled at every boot and nothing adb can do sticks; two protected packages noted; HDMI input switching is Amazon-only (TUNE_INPUT is signature-level); AdGuard Private DNS works; Kids, OTA, Live TV, Silk kept; debloat only, see the 2023 stick list for more packages |
|
||||
| `hisense-hg9/` | Hisense HG9 (HiSmart 4K A4FFM) | Android TV 9 | ACR collector, Smartsense, log reporter, store mode, B2B; FLauncher used instead of stock |
|
||||
| `hisense-hismarttv-a4-android11/` | Hisense HiSmartTV A4 (xiaoyushan, MStar m7322), Android 11 firmware RTT2.221108.001 | Android TV 11 | Same set after its Android 11 update, now with the FFM-style namespace: Hisense ACR (evservice), push messages, VIDAA Channels, HiAlexa, hotel mode, store disclaimer, Google partner tracking and auto-installs; streaming apps optional; OTA, casting, Assistant kept; USB debugging opens port 5555; the Input key only works through the stock launcher (VIEW_INPUTS); smartsense kept |
|
||||
@@ -126,6 +126,7 @@ on that firmware, grouped and commented. These are starting points: comment out
|
||||
| `redmi-mitv-antl0/` | Redmi TV (MiTV-ANTL0, starwars) | Android 5.1.1 (not Android TV) | Mi push/web-content/cloud-control ads, TV Taobao, stock screensaver, OTA; needs `pm hide` instead of `pm disable-user`; startup-ad method depends on firmware and stock-launcher version, see the [L43M7-EA settings-only case](../docs/devices/xiaomi-l43m7-ea-antl0.md) |
|
||||
| `redmi-mitv-mftp0/` | Redmi TV (MiTV-MFTP0, alita), China firmware 23.2.10.6129 | Android TV 9 (CN build) | CN-firmware Redmi, no Google apps: Mi analytics, tvqs, after-sales survey upload, cloud control, promo web container, shop plugin and store, preloaded apps, Mi Home off; `pm disable-user` works; **keep PatchWall enabled**: Home is a package-name allowlist like MiTV-AETP0, the `com.ts.launcher` application-ID build became Home and survived a reboot, do not run `build-and-install.sh` with defaults; startup ad off with `boot_ad_switch 0` on launcher 3.49.1601; `com.gitvdemo.video` is 银河奇异果 (iQIYI), kept; push service (installer whitelist), voice, casting, OTA, payments kept |
|
||||
| `rocktek-gb1/` | RockTek GB1 | Google TV 14 | Provisional seven-package list: Android privacy-sandbox services, feedback and unused media apps; setupwraith and launcherx off only after a confirmed Home handover and Wi-Fi ownership check; [gear and Macro buttons restored](rocktek-gb1/README.md) through the device overlay |
|
||||
| `rocktek-gx1/` | RockTek GX1 (HPR3A1325_4K) | Google TV 14 | Skyworth Realtek RTD1325 platform; Google TV 14 with 5-slot glass dock; stock launcherx and setupwraith safely disabled after Home handover; Google TV mobile remote and RockTek front panel LED control preserved; [gear button mapped to keycode 83](rocktek-gx1/README.md) |
|
||||
| `sankey-smart2ktvse/` | Sankey SMART2KTVSE (Whale OS, SiliconPlayer am30bm) | Android TV 13 | Whale OS (Zeasn) telemetry/services, factory apps, AI voice assistant, ad services, updaters; stock launcher `com.whaletv.launcher` replaced with CleanYourTV; Live TV `com.zeasn.livetv` kept (needed for HDMI inputs); camera `com.android.camera2` left out of the list (disabled by hand on that unit; system app, so `pm disable-user` works and `pm uninstall` fails); MENU+1147 does NOT work on this model; ADB enabled via Activity Launcher app; 1 GB RAM; ADB over WiFi on port 5555 after enabling Developer Options via Activity Launcher app |
|
||||
| `sankey-smart-tv-hi3751v350/` | Sankey SMART_TV (CVTE, HiSilicon Hi3751V350, 1 GB) | Android 12 | CVTE ad and push services (`gaia.ad`, `wonder.cloud`, `industries`), the ad screensaver, the "cleaner", the stock weather and Google feedback; Miracast off by choice; the CVTE store kept by default (it hosts the stock launcher's Apps grid; the tested set turned it off because it kept pushing a CVTE-signed "WebTube" as a YouTube update); no Developer options and no App info page, ADB from the CVTE factory menu (MENU 1147); stock launcher kept (no FallbackHome, `COMMON_HOME`, #1201); Inputs pill opens `com.cvte.tv.globalui/.InputSourceActivity` |
|
||||
| `sanyo-atv-r2/` | SANYO ATV R2 (SCBC, Realtek RTD285O) | Android TV 9 | S-Channels, E-SHOW demo, Vewd, TV Booster, SANYO OTA |
|
||||
|
||||
@@ -5,7 +5,7 @@ in `values/strings.xml`, so a full language is by far the largest thing a transl
|
||||
adds to `launcher/app/src/main/res/` - and the release APK has a hard budget:
|
||||
`.github/workflows/ci.yml`'s `launcher` job, which runs on every pull request in `launcher/`, measures
|
||||
`launcher/app/build/outputs/apk/release/app-release.apk` and fails the build at 589,824 B. The launcher
|
||||
ships just under that (README.md quotes about 515 KB), and #1271 is a full Korean translation that did
|
||||
ships just under that (README.md quotes about 517 KB), and #1271 is a full Korean translation that did
|
||||
not fit. Until now the page said nothing about it, so a translator could follow the recipe exactly and
|
||||
land a red build at a step the page never mentions.
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ try:
|
||||
except ImportError:
|
||||
sys.exit("readme_stats.py needs Pillow: tools/venv/bin/pip install -r tools/requirements-perf.txt")
|
||||
|
||||
STATS = [("292", "TV MODELS"), ("83", "BRANDS"), ("28", "LANGUAGES"), ("515 KB", "LAUNCHER")]
|
||||
STATS = [("293", "TV MODELS"), ("83", "BRANDS"), ("28", "LANGUAGES"), ("517 KB", "LAUNCHER")]
|
||||
W, H = 1600, 240
|
||||
img = Image.new("RGB", (W, H), "#15181e"); d = ImageDraw.Draw(img)
|
||||
def f(size, wt):
|
||||
|
||||
Reference in new issue
Block a user