Подтвердить что ты не робот

Перезапустить Android-машину

у нас есть android + linux m/c, мы входим в оболочку linux и загружаем машину в графический интерфейс Android. теперь у нас есть некоторый script, который работает на той же машине через оболочку linux. В этом случае, когда зависает script, нам необходимо перезагрузить машину Android. но это также приводит к перезагрузке Linux-машины. поскольку они находятся на одной машине. поэтому мне нужен способ перезагрузки Android, поэтому он выходит из состояния зависания, и элемент управления остается на script, который выполняется через оболочку linux.

есть ли какая-нибудь команда adb или linux, которая работает для меня?

4b9b3361

Ответ 1

Вы можете перезагрузить устройство, отправив следующую трансляцию:

$ adb shell am broadcast -a android.intent.action.BOOT_COMPLETED

Ответ 2

Вы пробовали просто "перезагрузиться" с помощью adb?

  adb reboot

Также вы можете запускать полные сценарии оболочки (например, перезагружать ваш эмулятор) с помощью adb:

 adb shell <command>

Я подвел несколько команд adb на моей странице здесь, которые могут вам помочь.

Ответ 3

adb reboot не следует перезагружать свой Linux-модуль.

Но в любом случае вы можете перенаправить команду на определенное устройство adb с помощью adb -s <device_id> command, где

Идентификатор устройства можно получить из команды adb devices
В этом случае команда reboot

Ответ 4

Я думаю, что единственный способ сделать это - запустить другую машину параллельно и использовать эту машину для выдачи команд в свою коробку Android так же, как и с телефоном. Если у вас возникли проблемы с изменением IP-адреса, вы можете зарезервировать ip на своем маршрутизаторе и попросить компьютер захватить его, а не запрашивать маршрутизаторы DHCP для одного. Таким образом вы можете выполнить ping машину и выяснить, если она перезагрузилась, чтобы продолжить script.