Adott: olcsó Orion 40SA19FHD típusú 40"-os okostévé Android 7-tel.
Cél: Napi ~10 órában lehetőleg teljes képernyőben futtatni rajta egy böngészőt, benne egy weboldalt (egyedi webapp, benne jókora Google Maps embed) ami folyamatosan változó POI-kat jelenít meg.
Probléma: bár a Google Chrome-ot sikerült felrakni a beépített nem-Google Play "app store"-ból, a nagyon magas DPI beállítás miatt a weboldalak furán jelennek meg benne desktop módban is (mintha nagyon kicsi lenne a felbontás). Az UI-n is látszik, hogy bazinagy, valószínűleg azért, hogy távolról is jól lehessen látni / el lehessen olvasni a dolgokat. Viszont ezt a kijelzőt nem távolról fogják nézni, sőt. A Chrome beállításaiban és a gyakorlatilag nonegzisztens eszközbeállításoknál (nincs ám rendes Android settings) nem lehet UI scalinget, betűméretet, felbontást vagy bármi hasonlót állítani.
Örömteli felismerés: egy gyors portscan után kiderült, hogy az :5555 nyitva van az eszközön, ugyanis az Orion volt kedves fent hagyni egy hálózaton keresztül is elérhető Android Debug Bridge (ADB) démont. Ami örömteli, mert root jogok amúgy nincsenek, így harmadik feles appal sem lehetne ilyet varázsolni tudomásom szerint.
Egy másik eszközről sikerült is hozzá kapcsolódni:
adb tcpip 5555
adb connect 192.168.1.234:5555
Ezután a shell parancssal lehet garázdálkodni. Célszerű egy ilyen lekérdezéssel indítani, hogy megnézzük az aktuális megjelenítési beállításokat:
adb shell dumpsys display
A fenti parancs kimeneteének lényeges sora felbontás/DPI témában:
mBaseDisplayInfo=DisplayInfo{"Built-in Screen", uniqueId "local:0", app 1280 x 720, real 1280 x 720, largest app 1280 x 720, smallest app 1280 x 720, mode 1, defaultMode 1, modes [{id=1, width=1280, height=720, fps=60.000004}], colorMode 0, supportedColorModes [0], hdrCapabilities android.view.Display$HdrCapabilities@a69d6308, rotation 0, density 240 (160.0 x 160.0) dpi, layerStack 0, appVsyncOff 1000000, presDeadline 16666666, type BUILT_IN, state ON, FLAG_SECURE, FLAG_SUPPORTS_PROTECTED_BUFFERS}
A 240-ről lefeleztem a DPI-t az alábbi paranccsal (az eredmény pár másodperc múlva látszik, nem kell semmit újraindítani, szóval lehet könnyen játszogatni különböző értékekkel):
adb shell wm density 120
A felbontást pedig felpattintottam full HD-ra (ennyit tud az eszköz elvileg):
adb shell wm size 1920x1080
A beállítások újraindítás után is megmaradnak. Ja, azt is lehet akár adb-vel:
adb reboot
- webmotion blogja
- A hozzászóláshoz be kell jelentkezni
- 510 megtekintés
Hozzászólások
ezt úgy kell érteni, hogy a tévéhez ssh-n (telneten?) keresztül lehet kapcsolódni azonosítás nélkül az 5555 porton?
Vagy az adb-hez van valami kliensprogram, vagy ez egy protolkoll?
- A hozzászóláshoz be kell jelentkezni
lenyegeben igen. alapbol nem kene hogy legyen ilyen, de hat valaki veletlenul/keszakarva engedelyezte a tcp elerest.
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Az ilyen helyzetekről, ez jut eszembe:
- A hozzászóláshoz be kell jelentkezni
Igazából nem. ADB feature a tcp 5555 elérés normál alapesetben. Viszont az ADB-t a fejlesztői beálltásokban lehet engedélyezni/letiltani (alapból nincs engedélyezve). Tehát nem lehet "csak úgy" belépegetni.
- A hozzászóláshoz be kell jelentkezni
Az Android eszközön fut egy adbd nevű daemon, amihez az adb nevű CLI kliensprogrammal (ami többek között a bárki által letölthető Android SDK-ban is benne van, de vannak csak adb-t tartalmazó Linux csomagok is) lehet többnyire másik eszközről és többnyire bármiféle azonosítás nélkül kapcsolódni. Hogy kb. miket tud az adb, arról van itt van egy remek PDF cheatsheet.
- A hozzászóláshoz be kell jelentkezni
A PDF-et köszi. Az alap ADB dolgot ismerem, használom. Viszont eddigi eszközökön engedélyezni kellett, hogy legyen ilyen elérhetőség. Rejtett menü előhozása előbb, majd engedélyezni az elérést. Kapcsolódáskor pedig van egy "elfogadom-e erről az eszközről a kapcsolatot..." kérdés.
Ha jól értem akkor ahogy a dobozból kibontja anyukám, egy ilyen TV-t, csak a kérdés fog feljönni neki, ami valószínűleg elfogad, mert épp Esmeralda-t akarja nézni nem pedig a dialog-box-ot.
Ez akkor lesz érdekes amikor házon belül fertőzött számítógép, okos-mosógép, hűtő, meg ki tudja még micsoda majd szépen megmogyorózza ADB-n keresztül a TV-t is.
- A hozzászóláshoz be kell jelentkezni
Sajnos nincs már nálam az eszköz, de ha jól emlékszem, kérdés _sem_ volt, mikor hozzákapcsolódtam adb-vel (amúgy tudom melyik dialogról beszélsz, de az nem csak USB adb kapcsolódáskor van?). Szimplán folyamatosan kussolva végrehajtotta a parancsokat.
- A hozzászóláshoz be kell jelentkezni
android telon (lineageos) eloszor elo kell hozni a developer menut (7szer bokkodes az about menuben valamelyiket), es abban van benne hogy network adb engedelyezese. illetve kapcsolodaskor is van egy engedely keres.
nyilvan a tv-s androidbol "kihelletek" ezt az engedelyezesi dialogot
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Feliratkozás.
"Mert úgy szerette Isten e világot, hogy az ő egyszülött Fiát adta, hogy valaki hiszen ő benne, el ne vesszen, hanem örök élete legyen". (János 3:16)
- A hozzászóláshoz be kell jelentkezni
Ez jó.
- A hozzászóláshoz be kell jelentkezni
Like! :)
- A hozzászóláshoz be kell jelentkezni
Könyvjelző
"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."
- A hozzászóláshoz be kell jelentkezni