Есть ли способ написать script, который скопирует файлы из оболочки ADB с помощью run-as?
Единственный способ, который я знаю для копирования в оболочке adb, - это использовать cat source > dest
(изменить: современные версии для Android имеют команду cp
, что делает этот вопрос ненужным), но я могу только процитировать большую версию, чем знак одного уровня в глубину - так что мой script может передать его в оболочку adb, но не для adb shell run-as.
Например, это работает:
adb shell "cat source > dest"
Но это не так:
adb shell run-as "cat source > dest"
И это:
adb shell "run-as cat source \> dest"
Я даже попытался создать небольшой script и загрузить его на устройство, но я не могу запустить script из оболочки adb - он говорит мне, что "разрешено отклонение". Я также не могу chmod script.
Причина, по которой я хочу сделать это, - это скопировать файл в частную область хранения приложения - в частности, я использую script для изменения общих настроек и возврата измененных настроек. Однако только само приложение или корень могут писать в файл, который я хочу.
Вариант использования в этом сценарии - это копирование файла в защищенное место на устройстве, а не его получение; для извлечения уже есть хорошие ответы в на этот вопрос.