Remote ADB Shell е терминално приложение, което ви позволява да се свържете с услугата ADB shell на други устройства с Android през мрежата и да изпълнявате команди на терминала. Това може да бъде полезно за отдалечено отстраняване на грешки на устройства с Android (изпълнение на инструменти като top, logcat или dumpsys). Той поддържа множество едновременни връзки към различни устройства и поддържа тези връзки живи, дори когато приложението е във фонов режим. Това приложение не изисква root на нито едно устройство, но root може да бъде полезен за конфигуриране на целевите устройства. Ако целевите устройства не са рутирани, трябва да използвате компютър с Android SDK и Google USB драйвери, за да ги конфигурирате (подробно по-долу).
Това приложение е обвивка около обвивката, която е изложена върху ADB. Той поддържа 15 хронология на командите, която е достъпна чрез продължително натискане на командното поле. Продължителното натискане на самия дисплей на терминала ще даде възможност за изпращане на Ctrl+C, превключване на автоматично превъртане или излизане от сесията на терминала.
Това работи по абсолютно същия начин, по който командата "adb shell" работи на компютър. Тъй като това приложение използва собствена реализация на ADB протокола в Java, то не изисква root нито на устройство, нито на приложения на трети страни на целевото устройство. Устройствата просто говорят помежду си същия протокол, който биха направили на компютър, работещ с ADB клиента от Android SDK.
ВАЖНО: Устройствата с Android 4.2.2 и по-нови използват RSA ключове за удостоверяване на ADB връзката. При моето тестване устройствата, работещи с 4.2.2, ще трябва да бъдат включени към компютър при първото свързване към тях (от всяко устройство с инсталирано това приложение). Това им позволява да покажат диалоговия прозорец за приемане на публичен ключ, който трябва да приемете (и отметнете „Винаги разрешавайте от този компютър“). Устройствата с Android 4.3 и 4.4 изглежда нямат проблем с показването на диалоговия прозорец без връзка с компютър, така че изглежда, че това е заобиколно решение, специфично за Android 4.2.2.
За да конфигурирате основна цел без root права, включете целевото устройство към компютър, на който е инсталиран Android SDK, и стартирайте „adb tcpip 5555“ от папката с инструменти за платформа на Android SDK. Това ще започне да слуша ADB на порт 5555 на целевото устройство. След това устройството може да бъде изключено и ще остане конфигурирано правилно до рестартиране.
За устройства, които имат root права (въпреки че не е задължително), можете да инсталирате едно от няколкото „ADB WiFi“ приложения, за да позволите на ADB сървъра да слуша през мрежата. Устройствата с персонализиран ROM може да имат опция за активиране на ADB през мрежата в панела с опции за програмисти на Настройки. Използването на някой от тези методи ще конфигурира правилно ADB за достъп до мрежата с това приложение. Допълнителната стъпка за 4.2.2 все още е необходима за първоначалното свързване.
За да се свържете с вашето отдалечено устройство с Android, въведете IP адреса на устройството и номера на порта (5555 от примера по-горе) в Remote ADB Shell. Докоснете Свързване и ще се опита да се свърже с устройството и да стартира терминала.
Разработчици: Персонализираната Java ADB библиотека, която съм написал за това приложение, е с отворен код под BSD лиценза на https://github.com/cgutman/AdbLib
Източникът за това приложение е достъпен под лиценза на Apache: https://github.com/cgutman/RemoteAdbShell