Я создал script для монтирования разделов и создания некоторых вещей в моей системе Android. Я сохранил script как install.sh в папке /bin Android.
Я хочу вызвать script из ADB, который сам вызывается из пакетного файла в Windows, но его нужно выполнить с правами root.
Первое решение, которое я пробовал, состояло в том, чтобы вызвать script с помощью
adb shell "su -c sh /bin/script.sh"
но он не работает, поскольку он дает мне доступ к оболочке (с правами root), но ничего не выполняется. Я также попытался позвонить
adb root "sh /bin/script.sh"
но я получил следующую ошибку:
adbd cannot run as root in production builds
Затем я попытался написать
su -c "command"
для всех команд, которым нужен корневой доступ в моем script, но у меня такая же проблема. Когда я запускаю script, я получаю только корневую оболочку и ничего не выполняется.
Если я использую первое решение вручную (например, я вызываю adb shell su, затем my script), он работает. Однако все дело в том, чтобы автоматизировать процесс, так что оболочку adb можно вызвать из другого script.
Есть ли у вас какое-то представление о том, как я могу это достичь?
Спасибо!