Может ли Appium получить доступ к файлам приложений без рутирования устройства?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Может ли Appium получить доступ к файлам приложений без рутирования устройства?

Сообщение Anonymous »

Мне нужен доступ к файлам (R/W) на устройстве Android с помощью Appium (на Java) в Windows.
Я знакомлюсь с adb в чтобы хотя бы знать, какой путь ожидается для /data, /Download и т. д., но кажется, что у него нет разрешений даже для файлов данных AUT.
Я думаю, что сам путь отличается от того, что я вижу на устройстве и ПК, после поиска здесь и там и обнаружения части «Внутреннее хранилище» переведено на местный язык. Но я не знаю, как его найти, чтобы Appium распознал его.
Я пробовал такие команды на терминале:

Код: Выделить всё

adb shell ls -R
Это дало мне ненужные файлы, а также множество:

Код: Выделить всё

map_files: Permission denied
ns: Permission denied
./proc/1286/task/1286/cwd: Permission denied
./proc/1286/task/1286/root: Permission denied
./proc/1286/task/1286/exe: Permission denied
fd: Permission denied
fdinfo: Permission denied
ns: Permission denied
Даже при запуске терминала от имени администратора.
Что касается команды adb, запущенной из моей программы, например:

Код: Выделить всё

        String cmd = " adb devices";
ProcessBuilder processBuilder = new ProcessBuilder();
processBuilder.command("sudo C:\\Users\\myUser\\AppData\\Local\\Android\\Sdk\\platform-tools\\adb.exe", cmd);
Process process = processBuilder.start();
Он просто нигде не виден (ни в журнале сервера Appium, ни в стандартном выводе).
Моя конечная цель — манипулировать файлами; моя команда была:

Код: Выделить всё

`driver.pushFile("[can't find the expected filesystem mapping anywhere!!!] \\storage(maybe??)\\Download\\bird.jpg", new File("C:\\Users\\myUser\\Downloads\\bird.jpg"));`
Что не удается (опять же, даже если приложение запущено от имени администратора) с:

Код: Выделить всё

`adb: error: failed to copy 'C:\Users\myUser\AppData\Local\Temp\2024826-17660-y8us7v.ja5ka\appium.tmp' to '\storage\Download\bird.jpg': remote couldn't create file: Read-only file system`
Так все ли тестировщики Appium рутируют свои устройства, чтобы иметь возможность манипулировать данными (даже с помощью /data своего собственного приложения)?
Есть ли другой способ доступа , перечислить, скопировать или удалить их?

Подробнее здесь: https://stackoverflow.com/questions/790 ... ing-device
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»