NEWS
Управление Android устройством через ADB
-
Android Debug Bridge (ADB) - это универсальный инструмент командной строки, который позволяет вам общаться с устройством. Команда adb облегчает различные действия на устройстве, такие как установка и отладка приложений, и предоставляет доступ к оболочке Unix, которую можно использовать для запуска различных команд на устройстве.
ADB включено в Android SDK Platform-Tools. Но можно поставить отдельно Minimal ADB and Fastboot.
На андроид устройстве (в моём случае tv box x92), уставновлено приложение WiFi ADB для подключения через WiFi (можно без приложения по через провод USB). Подробнее как организовать связь почитайте в Интернетах.
в консоле выполняем подключение к Android устройству:
adb connect 192.168.0.66:5555Разрешаем отладку на самом устройстве, ставя галочку всегда разрешать отладку (чтоб не видеть каждый раз этот диалог при подключении).
После этого устройство должно появиться в списке по командеadb devicesПосле перезапуска компьютера нужно запускать сервер adb. Добавьте эту команду в автозагрузку.
adb start-serverДалее переходим к ioBroker.
Нужно поставить пакет adbkit.И для примера скрипт запуска KODI
var adb = require('adbkit'); var client = adb.createClient(); var host = "192.168.0.66"; var port = 5555; var deviceid = host + ':' + port; openKodi(function() {console.log("KODI opened")}); function openKodi(callback) { openApp("org.xbmc.kodi", callback); } function openApp(appName, callback) { client.listDevices() .then(function(devices) { // find my device in connected devices var myDevice = devices.find(function(device) { return device.id === deviceid; }); if (!myDevice) { // need connect client.connect(host, port, function(err, id) { if (!err) { onConnectedDevice(appName, callback); } }); } else { // device is connected onConnectedDevice(appName, callback); } }) .catch(function(err) {log(err)}); } function onConnectedDevice(appName, callback) { // open KODI runAppCommand(appName, function() { // await KODI connection to driver var kodiConnectionSub = on("kodi.0.info.connection", function(cs) { unsubscribe(kodiConnectionSub); if (cs.state.val === true) { console.log("KODI is connected"); if (callback) callback(); } }); }); } function runAppCommand(appName, callback) { client.shell(deviceid, "monkey -p " + appName + " -c android.intent.category.LAUNCHER 1", function(err, output) { if (!err && callback) { callback(); } }); } -
Запилил адаптер https://github.com/om2804/ioBroker.adb
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden