LAB - Little Android (TV) Brother
LAB — Little Android Brother
Dépôt : https://github.com/LgHS/lab
LAB est une app Android (Kotlin), en paysage, qui tourne sur une box Android TV. Elle remplace le launcher : elle démarre à l'allumage et revient quand on appuie sur Home (clavier F10).
Ce qu'elle affiche
| Panneau | Contenu | Source | Rafraîchissement |
|---|---|---|---|
| Caméras | Porte d'entrée + SAS vélo | UniFi Protect (RTSP) | continu |
| Porte | État de la serrure (vert = verrouillée et fermée, cadre rouge sinon) | Bridge Nuki | 5 s |
| Livraison | Code livreur Deliveroo, décompte, « proche » mis en évidence | 15 s | |
| Musique | Titre en cours, pochette | moOde (MPD + Spotify/AirPlay/Deezer) | instantané / 2 s |
| Bus | Prochains départs TEC (ligne 11, arrêts Simenon, Congrès…) | GTFS-RT TEC + horaires générés | 30 s |
| Trains | Trains directs SNCB | iRail | 60 s |
| Météo | Météo à Outremeuse | Open-Meteo | 10 min |
Modifier les arrêts de bus et les trains
Pas besoin de recompiler l'app.
- Éditer
dashboard/transport.jsondirectement sur GitHub. tec.stops: quais TEC (stop_idGTFS, un quai = un sens). Pour chaque quai,linesliste les lignes à afficher et leur destination. Une ligne qui n'est pas listée n'est pas affichée. L'ordre des quais compte : un bus qui passe par plusieurs quais s'affiche au premier où sa ligne apparaît.sncb.routes: paires de gares (noms iRail).- Pour trouver un
stop_id:stops.txtdu GTFS TEC. - Pousser. La GitHub Action
dashboard-tec.ymlrégénère les horaires théoriques (dashboard/tec_*.csv,generated.json: ne pas les éditer à la main). Elle tourne aussi chaque lundi. - Attendre que l'Action se termine (onglet Actions). L'app relit la config au démarrage puis toutes les heures.
Le flux temps réel TEC ne contient que les retards. Sans l'horaire théorique généré, les bus d'un nouveau quai n'apparaissent pas.
Compiler et installer
./gradlew assembleRelease
adb connect <ip-de-la-box>
adb install -r app/build/outputs/apk/release/app-release.apk
adb shell cmd package set-home-activity be.lghs.lab/.MainActivity
- Toujours installer la version release : en debug, l'app est environ 50 fois plus lente.
- Les secrets vont dans
local.properties, qui n'est jamais commité : clé API TEC, URLs RTSPS des caméras et jeton Nuki. Sans jeton Nuki, la tuile Porte affiche « Nuki ? ». - Les réglages réseau (moOde, bridge Nuki, coordonnées météo) sont dans
app/src/main/java/be/lghs/lab/Config.kt.
Android TV / Google TV : désactiver le launcher d'origine
# Android TV
adb shell pm disable-user --user 0 com.google.android.tvlauncher
# Google TV
adb shell pm disable-user --user 0 com.google.android.apps.tv.launcherx
adb shell pm disable-user --user 0 com.google.android.tungsten.setupwraith
Pour annuler : pm enable.
Sur place
- Ouvrir les réglages Android : touche Menu/Réglages de la télécommande, ou appui long sur OK.
- La touche Retour ne quitte pas le tableau de bord. C'est voulu.
