Получить значение объекта из файла Google Диска - PullRequest
0 голосов
/ 19 июня 2020

Я реализую функцию резервного копирования / восстановления в своем приложении Android с помощью API Google Диска. Я успешно загружаю файл конфигурации приложения, используя:

 File fileMetaData = new File();
 fileMetaData.setName(Consts.DRIVE_MODEL_NAME);

 java.io.File file = new java.io.File(filePath);
 FileContent mediaContent = new FileContent("text/plain", file);

 File driveFile = null;

 try {
     driveFile = mDriveService.files().create(fileMetaData, mediaContent).execute();
 }
 catch (Exception e) {
     e.printStackTrace();
     return null;
 }

И я могу найти свой файл в папке на моем диске. Но теперь я бы хотел загрузить его и использовать для восстановления файла конфигурации моего приложения. Я безуспешно пытаюсь скачать файл. Я вижу, что Google предоставляет способ получить OutputStream, но я не знаю, как использовать его, чтобы получить соответствующий объект (это строковый файл json) или сохранить его в телефоне, а затем загрузить.

Сейчас я использую:

 OutputStream outputStream = new ByteArrayOutputStream();
 mDriveService.files().get(storedFile.getId()).executeMediaAndDownloadTo(outputStream);
 ???

storedFile - это файл на диске (com.google.api.services.drive.model.File), который я правильно получаю из API , но я не знаю, как преобразовать его в объект (объект String).

Как я могу это сделать?

Спасибо!

...