Я пытаюсь выполнить adb взаимодействия через код python. У меня есть бесконечный исполняемый файл на устройстве Android, который я хотел бы начать, и через 10 секунд его убейте. прямо сейчас, я могу запустить программу, но не могу ее убить другим, вручную нажав ctrl + c.работает adb с python: выполнение программы и ее завершение
procID = subprocess.Popen(["adb", "shell"], stdin=subprocess.PIPE,)
procID.communicate('su\n endless_program data/test 5\n')
time.sleep(5)
os.kill(procID, signal.SIGINT)
procID.kill()
Я попытался убить его с помощью os.kill или procID.kill, но оба они не работают.
Я также пытаюсь использовать pexpect, но по какой-то причине я не могу получить его для запуска adb.
Hi Phidelux, спасибо за быстрый ответ. после запуска «adb shell» и «бесконечной программы» выходы программы запускаются через окно cmd. Таким образом, у меня нет доступа к каким-либо командам adb, пока я не сделаю ctrl + c. поэтому даже этот сеанс оболочки adb не завершается. Я достаточно ясно? – TamirE
Невозможно запустить вторую оболочку, чтобы убить процесс, блокирующий первый? – Phidelux
hmmmm ... интересный. Я попробую – TamirE