О Remote ADB Shell
Remote ADB Shell — это терминальное приложение, которое позволяет вам подключаться к службе оболочки ADB других устройств Android по сети и выполнять команды терминала. Это может быть полезно для удаленной отладки устройств Android (запуск таких инструментов, как top, logcat или dumpsys). Он поддерживает несколько одновременных подключений к разным устройствам и поддерживает эти подключения, даже когда приложение находится в фоновом режиме. Это приложение не требует root на любом устройстве, но root может быть полезен для настройки целевых устройств. Если целевые устройства не имеют root-прав, для их настройки необходимо использовать компьютер с Android SDK и USB-драйверами Google (подробнее см. ниже).
Это приложение представляет собой оболочку оболочки, доступную через 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.
Чтобы настроить стандартную цель без рута, подключите целевое устройство к компьютеру, на котором установлен Android SDK, и запустите «adb tcpip 5555» из папки инструментов платформы Android SDK. Это запустит ADB прослушивание порта 5555 на целевом устройстве. Затем устройство можно отключить, и оно останется правильно настроенным до перезагрузки.
Для устройств с рутом (хотя это и не требуется) вы можете установить одно из нескольких приложений «ADB WiFi», чтобы сервер ADB мог прослушивать сеть. У устройств с пользовательским ПЗУ может быть возможность включить ADB по сети на панели «Параметры разработчика» в настройках. Использование любого из этих методов позволит правильно настроить ADB для доступа к сети с этим приложением. Дополнительный шаг для 4.2.2 по-прежнему требуется для первоначального подключения.
Чтобы подключиться к удаленному устройству Android, введите IP-адрес устройства и номер порта (5555 из приведенного выше примера) в удаленной оболочке ADB. Нажмите «Подключиться», и он попытается подключиться к устройству и запустить терминал.
Разработчики: пользовательская библиотека Java ADB, которую я написал для этого приложения, имеет открытый исходный код под лицензией BSD на https://github.com/cgutman/AdbLib.
Исходный код этого приложения доступен по лицензии Apache: https://github.com/cgutman/RemoteAdbShell.
Обновление Remote ADB Shell 1.7.2
v1.7.2
- Fixed several reported crashes
Читать далее