Доступ к файлам в корневом каталоге устройства - PullRequest
2 голосов
/ 25 марта 2011

Я разрабатываю приложение для Galaxy Tab, и теперь мне нужно получить несколько файлов в папке / data / data //.

Эмулятор очень, очень медленный. Итак, я тестирую на устройстве, и мне нужно получить файлы с устройства (из эмулятора я могу это сделать). Как я могу это сделать?

Ответы [ 3 ]

5 голосов
/ 25 марта 2011

Добавьте функцию отладки в свой код для копирования необходимых файлов из защищенных папок на SD-карту вашего телефона.Вы можете получить к ним доступ со своего компьютера.

public static void backupFile() throws IOException {

  String inFileName = "/data/data/your.package.name/........"; //TODO Use folder/filename
  File inFile = new File(inFileName);
  FileInputStream fis = new FileInputStream(inFile);

  String outFileName = Environment.getExternalStorageDirectory()+"/........"; //TODO Use output filename
  OutputStream output = new FileOutputStream(outFileName);

  byte[] buffer = new byte[1024];
  int length;
  while ((length = fis.read(buffer))>0)
    output.write(buffer, 0, length);

  output.flush();
  output.close();
  fis.close();
}
3 голосов
/ 25 марта 2011

Каталог / data на устройстве имеет ограниченные разрешения.Чтобы скопировать файлы с помощью adb, вам нужно иметь рутированное устройство.

1 голос
/ 25 марта 2011
adb pull <path>

загрузит файлы с устройства в ваш текущий каталог.

Вы также можете использовать adb shell, чтобы исследовать свое устройство с помощью общих команд оболочки. adb shell ls <path> позволит вам сделать это, не входя в оболочку полностью.

Редактировать - это не будет работать для файлов в каталоге / data или других ограниченных каталогах, если у вас нет корневого доступа к устройству.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...