Android TV TCL : couper les pubs et accélérer l’interface sans briquer le téléviseur

Mis à jour le 29 octobre 2026. Version initiale publiée le 21 décembre 2025, corrigée depuis grâce à deux retours en commentaires.

Les téléviseurs TCL sous Google TV arrivent avec une page d’accueil qui charge des recommandations sponsorisées, une poignée d’applications maison qui tournent en arrière-plan, et des animations longues qui donnent une impression de lenteur. Tout ça se désactive sans root, depuis la TV elle-même, en une trentaine de minutes.

Ce qui suit est la procédure que j’utilise, avec les deux pièges qui m’ont été remontés depuis la publication : désactiver le launcher Google TV d’origine peut provoquer un écran noir au redémarrage et obliger à un reset usine, et le champ « DNS privé » d’Android n’accepte pas une adresse IP. Les deux sont corrigés plus bas.

Ce que ce guide fait, et ce qu’il ne fait pas

  • Il supprime les bannières de l’écran d’accueil, les applications constructeur qui tournent en tâche de fond, et les trois quarts de la latence perçue dans les menus.
  • Il ne libère pas de RAM de façon spectaculaire. Je n’ai pas de mesure chiffrée à vous donner, et toute personne qui vous annonce « 20 à 30 % de ressources récupérées » sans méthode de mesure invente le chiffre. Moi compris : c’est ce que disait la première version de cet article, je l’ai retiré.
  • Il ne survit pas forcément à une mise à jour. Une OTA TCL peut réactiver des paquets désactivés. Un reset usine les restaure tous.
  • Il n’y a aucun root, donc aucun risque de perte de garantie logicielle. Le risque réel est l’écran noir, réversible par reset usine.

1. Activer le mode développeur

  1. Paramètres > Système > À propos.
  2. Descendez sur Build du SE Android TV (le libellé varie selon la version : « Numéro de build », « Build Android TV OS »).
  3. Appuyez sept fois sur OK. Un toast confirme l’activation.
  4. Retour dans Système > Options pour les développeurs.
  5. Activez Débogage USB. Sur certains modèles récents, l’option s’appelle Débogage ADB réseau ou Débogage sans fil : activez celle qui existe. C’est elle qui démarre le démon adbd et ouvre le port 5555.

Ne touchez à rien d’autre dans ce menu. Les options de rendu GPU et les limites de processus en arrière-plan ne sont pas des réglages de performance : ce sont des outils de débogage qui peuvent rendre l’affichage instable ou tuer vos applications en pleine lecture.


2. ADB TV : le shell, depuis la TV

Installez ADB TV depuis le Play Store. L’application se connecte au démon ADB de la TV sur sa propre boucle locale (127.0.0.1:5555) et vous donne un shell sans ordinateur. Au premier lancement, la TV affiche une fenêtre d’autorisation de débogage : cochez « Toujours autoriser » et validez. Sans cette validation, toutes les commandes échoueront avec device unauthorized.

C’est aussi par ADB TV que passent les installations d’APK qui échouent autrement, point remonté par Zqren en commentaire (8 février 2026) et confirmé depuis par d’autres retours.


3. Remplacer le launcher, sans provoquer d’écran noir

L’accueil d’origine n’est pas un simple menu : c’est une vue qui interroge en permanence les serveurs de recommandation de Google et de TCL. Le remplacer est l’étape qui change le plus de choses.

Le piège à connaître avant d’installer quoi que ce soit

La méthode que recommandait la première version de ce guide — installer Projectivy puis désactiver le launcher d’origine par ADB — casse les firmwares TCL récents. Zqren s’est retrouvé avec un écran noir au redémarrage et a dû faire un reset usine. Sur Google TV, le bouton Home est câblé sur le paquet du launcher système : si vous le désactivez alors que rien ne le remplace au niveau du système, la TV démarre sur un composant inexistant.

La méthode qui tient, telle que Zqren l’a trouvée et que j’ai reprise :

  1. Installez Projectivy Launcher (Play Store, ou APK via ADB TV).
  2. Installez Launcher Manager par APK, via ADB TV : c’est le seul chemin d’installation qui fonctionne dans les retours que j’ai.
  3. Dans Launcher Manager, désignez Projectivy comme launcher par défaut. Il intercepte le bouton Home au niveau du système, ce qui survit à un redémarrage complet et à une coupure de courant.
  4. Laissez le launcher d’origine activé. Il ne s’affichera plus. C’est le filet de sécurité qui vous évite le reset usine.

Si vous tenez à passer par le service d’accessibilité de Projectivy (Paramètres > Système > Accessibilité) plutôt que par Launcher Manager, faites-le : ça fonctionne sur les firmwares plus anciens. Mais testez un redémarrage complet, prise débranchée, avant de considérer que c’est réglé.

Si Projectivy ne démarre pas du tout

Un deuxième lecteur, « Pas » (28 octobre 2026), rapporte que Projectivy ne fonctionne pas sur son modèle et qu’il est passé par ARC Launcher, téléchargé depuis GitHub directement sur la TV, sans PC ni clé USB. FLauncher (open source, plus minimaliste, sans sections personnalisées) est l’autre solution de repli. Aucun des deux n’est équivalent à Projectivy en fonctionnalités ; ce sont des solutions pour les firmwares où Projectivy coince.

Le même lecteur fait remarquer, à juste titre, que le choix du navigateur et des lecteurs vidéo pèse souvent plus lourd au quotidien que le launcher : Kodi, VLC ou un navigateur pilotable au clavier du téléphone évitent de passer par les applications constructeur et leurs interfaces.

Réglages de Projectivy que je garde

  • « Lancer au démarrage » activé.
  • Taille des icônes à 110 %, étiquettes de texte masquées : densité d’affichage plus proche d’une Apple TV. C’est un goût personnel, pas une optimisation.
  • Sections manuelles pour les quatre ou cinq applications réellement utilisées, le reste dans le tiroir.

4. Désactiver le bloatware, proprement

D’abord l’inventaire, ensuite la liste

Les noms de paquets changent entre modèles, régions et versions de firmware. Ne recopiez pas une liste trouvée en ligne, la mienne comprise : listez ce que votre TV embarque réellement.

pm list packages | grep -i tcl
pm list packages | grep -i -E "waterfall|cast|guard|magi"
pm list packages -d          # ce qui est déjà désactivé

Dans ADB TV, tapez les commandes sans le préfixe adb shell. Depuis un PC, préfixez-les.

La bonne commande

# désactiver (réversible, recommandé)
pm disable-user --user 0 com.tcl.waterfall.overseas

# réactiver
pm enable --user 0 com.tcl.waterfall.overseas

Évitez pm uninstall -k --user 0. La désinstallation par utilisateur est plus agressive, et la restauration (cmd package install-existing <paquet>) ne remet pas toujours les données. disable-user suffit : le paquet ne tourne plus, ne s’affiche plus, ne consomme plus de cycles.

La règle qui évite le reset usine

Un paquet à la fois, puis un redémarrage, puis on vérifie que la TV revient. Désactiver quinze paquets d’affilée et redémarrer, c’est se condamner à ne pas savoir lequel a cassé l’accueil. Notez chaque nom de paquet au fur et à mesure : c’est votre liste de restauration.

Les candidats sûrs

  • TCL Channel (com.tcl.waterfall.overseas sur les modèles européens) : la source principale des bannières de l’accueil.
  • MagiConnect / T-Cast : recopie d’écran maison, redondante avec le Chromecast intégré.
  • Safety Guard / TV Guard : utilitaire de « nettoyage » constructeur. Aucun gain mesurable, un service permanent en plus.

Ce qu’il ne faut pas toucher

  • Le launcher système Google TV (généralement com.google.android.apps.tv.launcherx, à vérifier chez vous avec pm list packages | grep launcher) : c’est le coupable de l’écran noir décrit plus haut. Laissez-le actif, masquez-le avec Launcher Manager.
  • L’application Réglages du constructeur : c’est elle qui donne accès aux réglages image, son et HDMI, absents des paramètres Android génériques. Identifiez-la avec pm list packages | grep -i setting avant toute manipulation. La première version de cet article citait un nom de paquet (Vast.Tcl.Settings) que je n’ai pas pu vérifier sur un firmware récent : ne le prenez pas pour argent comptant, listez.
  • Les services Google Play et Play Store : sans eux, Netflix, YouTube et les DRM Widevine tombent.
  • Tout paquet dont vous ne reconnaissez pas le nom. Un paquet inconnu qui ne sert à rien coûte quelques mégaoctets. Un paquet inconnu qui sert au démarrage coûte un reset usine.

5. Les animations à 0,5x

Dans Options pour les développeurs, passez les trois échelles à 0,5x : échelle d’animation des fenêtres, échelle d’animation des transitions, échelle de durée des animations.

Soyons clairs sur ce que ça fait : les transitions durent deux fois moins longtemps. Aucun cycle CPU n’est libéré, aucune RAM n’est récupérée. Mais comme Android utilise ces animations pour masquer le temps de chargement des menus, le gain perçu est immédiat et c’est la modification la plus rentable du guide, en temps passé. À 0x, l’interface paraît sèche et certains menus clignotent ; 0,5x est le bon compromis.


6. Réseau et vie privée

Correction : « DNS privé » n’accepte pas d’adresse IP

La première version de ce guide donnait 94.140.14.14 à mettre en « DNS privé ». C’est faux : le champ « DNS privé » d’Android implémente DNS-over-TLS et n’accepte qu’un nom d’hôte. Une IP y sera rejetée. Deux options correctes, au choix :

  • DNS privé (DoT), le plus simple. Paramètres > Réseau et Internet > DNS privé, mode « Nom d’hôte du fournisseur », valeur dns.adguard.com. Le trafic DNS est chiffré et le filtrage s’applique quel que soit le réseau.
  • IP statique. Dans les réglages Wi-Fi ou Ethernet, passez en IP fixe et renseignez 94.140.14.14 et 94.140.15.15 comme serveurs DNS. Non chiffré, mais utile si votre firmware n’expose pas le DNS privé.

Une troisième voie, meilleure que les deux : filtrer au niveau du routeur ou d’un Pi-hole / AdGuard Home sur le réseau local. La TV ne peut alors rien contourner, et la règle s’applique à tous vos appareils. Attention au revers : certaines applications de rattrapage vérifient leurs propres domaines publicitaires et refusent de lancer la lecture si la requête échoue. Gardez une liste blanche sous la main.

Les cases à décocher

  • Paramètres > Confidentialité > Utilisation et diagnostics : désactiver.
  • Paramètres > Confidentialité > Annonces : désactiver la personnalisation, réinitialiser l’identifiant publicitaire.
  • Conditions d’utilisation du constructeur : selon les modèles et les régions, TCL propose une collecte de type ACR (reconnaissance automatique de contenu, qui identifie ce qui est affiché à l’écran, y compris via HDMI). Elle apparaît dans les réglages maison, pas dans les paramètres Android, sous un libellé du genre « conditions d’utilisation » ou « amélioration du service ». Parcourez-les une par une : je n’ai pas de chemin unique à vous donner, il change d’un firmware à l’autre.

7. Écran noir : la sortie de secours

Si la TV démarre sur un écran noir, la télécommande ne sert plus à rien. Reset usine matériel, procédure transmise par Zqren et vérifiée sur plusieurs modèles TCL : maintenez le bouton physique d’alimentation de la TV et le bouton de baisse du volume de la télécommande enfoncés simultanément pendant le démarrage, jusqu’à l’écran de récupération.

Vous perdez tout : comptes, applications, réglages image. D’où la règle du paquet unique entre deux redémarrages.


EDIT du 29 octobre 2026 — tout faire depuis VS Code, avec un LLM aux commandes

Taper des commandes pm avec une télécommande est pénible. Si vous avez un PC, vous pouvez brancher ADB en réseau sur la TV et laisser un agent type Claude, dans VS Code, faire l’inventaire et préparer les commandes à votre place. Ce n’est pas plus « puissant » que la méthode manuelle : c’est le même ADB. Le gain est sur le temps d’inventaire et sur la génération du script de restauration, qui est justement la partie qu’on bâcle.

Connexion ADB réseau

Sur la TV : options développeur activées, Débogage USB et/ou Débogage ADB réseau actifs. Relevez l’IP dans Paramètres > Réseau. Fixez-la dans votre box, sinon vous rejouerez l’appairage à chaque bail DHCP.

Sur le PC, avec les platform-tools Android installées :

adb connect 192.168.1.42:5555
# une fenêtre d'autorisation s'affiche SUR LA TV : cocher "Toujours autoriser"
adb devices -l
adb shell getprop ro.product.model

Si adb connect renvoie connection refused, le démon n’écoute pas sur le réseau : repassez par ADB TV sur la TV et exécutez setprop service.adb.tcp.port 5555, ou branchez un câble USB si votre modèle a un port compatible.

Côté VS Code

N’importe quel agent ayant accès au terminal fait l’affaire : l’extension Claude Code, Continue, Cline. Il n’y a pas d’intégration ADB à installer, l’agent appelle adb comme n’importe quelle commande shell. Ouvrez un dossier de travail dédié : vous allez y écrire des fichiers que vous voudrez relire dans six mois.

Ce que je lui fais produire, dans cet ordre :

  1. inventaire.txt : la sortie brute de adb shell pm list packages -f, plus pm list packages -d et pm list packages -3.
  2. restauration.sh : avant toute désactivation, un script qui réactive chaque paquet de la liste des candidats. S’il n’est pas écrit en premier, il ne sera jamais écrit.
  3. Un tableau des candidats : nom de paquet, rôle supposé, niveau de confiance, et la ligne du fichier d’inventaire qui le prouve.

Le prompt

Tu as accès au shell et adb est connecté à un téléviseur TCL sous Google TV
(adb devices le confirme). Objectif : identifier les paquets constructeur
désactivables sans casser le démarrage.

Contraintes strictes :
- Tu ne proposes QUE des paquets présents dans l'inventaire que tu viens de
  lire. Aucun nom de mémoire. Si tu n'es pas sûr d'un rôle, tu écris
  "inconnu", tu ne devines pas.
- Interdiction d'exécuter pm uninstall, pm clear, ou toute commande
  destructive. disable-user uniquement.
- Tu écris restauration.sh AVANT la première désactivation.
- Tu proposes les paquets un par un, tu attends ma validation, et tu me
  demandes de redémarrer et de confirmer que la TV revient avant de passer
  au suivant.
- Les paquets contenant "launcher", "settings", "gms", "vending",
  "widevine" ou "provision" sont hors périmètre. Tu les signales, tu n'y
  touches pas.

Commence par l'inventaire.

Ce qui va mal se passer si vous ne cadrez pas

  • Le modèle invente des noms de paquets. Il a lu des dizaines de guides TCL pendant son entraînement, dont des guides faux et des guides pour d’autres modèles. D’où la règle « uniquement ce qui est dans l’inventaire ». C’est exactement l’erreur que contenait mon propre article avec Vast.Tcl.Settings.
  • Il enchaîne. Laissé libre, il désactive douze paquets dans un seul tour, vous redémarrez, écran noir, et personne ne sait lequel. La validation unitaire n’est pas une précaution de confort.
  • Il affirme que c’est bon sans l’avoir vérifié. Il n’a aucun moyen de savoir à quoi ressemble votre écran. La seule vérification qui compte, c’est vous qui la faites, devant la TV, après redémarrage.
  • Il ne sait pas ce que votre firmware contient. Deux TCL de la même gamme et d’années différentes n’ont pas le même jeu de paquets.

Si vous devez retenir une seule chose de cet EDIT : l’agent est un bon exécutant pour l’inventaire, le tri et la génération du rollback. Il est un mauvais décideur sur ce qui peut être désactivé, parce qu’il n’a pas accès à la seule information qui compte — est-ce que la TV redémarre.


Ce qu’il reste après

Une TV qui démarre sur une grille d’applications sans bannière, des menus qui répondent sans délai d’animation, et une poignée de services constructeur en moins. Le reste du système est intact : les mises à jour continuent d’arriver, et une OTA peut réactiver ce que vous avez désactivé. Gardez votre liste de paquets et votre restauration.sh quelque part, vous repasserez dessus.

Si votre modèle se comporte différemment, les commentaires sont l’endroit : les deux corrections majeures de cette version viennent de là.

3 commentaires

  1. Bonjour,
    J’ai suivi votre guide avec une tv TCL très récente. Bien que projectivy soit bien installé et bien configuré, je me suis retrouvé avec un écran noir au redémarrage. Pas d’autre solution, que de faire un reset usine (démarrage avec le bouton on de la tv et le bouton baisser le volume de la télé sur la télécommande maintenus enfoncés).
    J’ai réussi en installant launcher manager avec son apk. La seule installation qui fonctionne est par l’intermédiaire d’ADB TV. j’ai pu ensuite paramétrer launcher manager que ce soit projectivy qui se lance même après un arrêt complet ou un redémarrage de la tv.

    • Bonjour,

      Un grand merci pour votre retour d’expérience extrêmement précis et précieux !

      Effectivement, les constructeurs (notamment TCL sur leurs modèles les plus récents) mettent régulièrement à jour leur surcouche Android TV / Google TV, ce qui peut parfois rendre la méthode standard instable ou provoquer ce fameux écran noir au redémarrage si le launcher d’origine est désactivé de force de manière classique.

      Bravo pour votre réflexe et votre persévérance ! Votre méthode alternative est excellente : passer par ADB TV pour installer et configurer Launcher Manager via son APK est une solution de contournement très robuste pour pérenniser le lancement de Projectivy Launcher, même après un arrêt complet.

      Et merci également d’avoir partagé la manipulation du reset d’usine physique, cela sauvera très certainement des vies !

  2. Merci pour ces informations importantes. Oui, je confirme : Projectivy Launcher ne fonctionne pas. Avec beaucoup de difficulté, j’ai réussi à télécharger ARC Launcher directement depuis GitHub, sans passer par un ordinateur ni une clé USB.

    Pour ce téléchargement et, plus généralement, pour à peu près tout, à mon humble avis, le choix du navigateur est le plus important, et de loin plus important que celui du launcher. Zeus, par exemple, permet d’utiliser son téléphone à la place de la télécommande et de naviguer directement avec le clavier du téléphone, ce qui est même mieux, à mon avis, qu’un clavier USB. Il permet aussi d’accéder directement aux applications, sans avoir à utiliser le clavier rudimentaire de la télécommande ni un launcher.

    Enfin, il me semble bien plus intéressant d’utiliser Kodi, VLC ou ORBITV pour toutes les chaînes et de se débarrasser des applications pénibles et nulles comme france.tv ou autres conneries du genre.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. Découvrez comment les données de vos commentaires sont traitées.