Я смог настроить сборщик файлов Google Диска, чтобы я мог прочитать содержимое любого файла, выбранного пользователем. Тем не менее, я хотел бы иметь возможность загружать файлы Документов Google, выбранные пользователем в виде текстовых файлов, а затем читать их содержимое, хотя мне удалось найти решения для этого, используя API Drive Rest, который, как я считаю, отделен от API Google Диска для Android. Есть ли какое-то решение, которое позволит мне это сделать? В настоящее время мой код для загрузки файлов выглядит следующим образом:Загрузить документ Документов Google в виде текстового файла с помощью API Google Диска для Android
final private class RetrieveDriveFileContentsAsyncTask
extends ApiClientAsyncTask<DriveId, Boolean, String> {
public RetrieveDriveFileContentsAsyncTask(Context context) {
super(context);
}
@Override
protected String doInBackgroundConnected(DriveId... params) throws IOException {
String contents = null;
DriveId driveId=params[0];
DriveFile file = driveId.asDriveFile();
DriveApi.DriveContentsResult driveContentsResult =
file.open(getGoogleApiClient(), DriveFile.MODE_READ_ONLY, null).await();
if (!driveContentsResult.getStatus().isSuccess()) {
return null;
}
DriveContents driveContents = driveContentsResult.getDriveContents();
BufferedReader reader = new BufferedReader(new InputStreamReader(driveContents.getInputStream()));
StringBuilder builder = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
builder.append(line);
builder.append('\n');
}
contents = builder.toString();
driveContents.discard(getGoogleApiClient());
return contents;
}
@Override
protected void onPostExecute(String result) {
super.onPostExecute(result);
if (result == null) {
return;
}
Intent intent=new Intent(getContext(),NotesActivity.class);
intent.putExtra("setTextTo",result);
startActivity(intent);
}
}
Android API - это оболочка API REST, поэтому вы можете получить какой-либо объект File? И можете ли вы открыть документ и прочитать содержимое в String? –
Я могу прочитать содержимое в строке любого файла, но файлы, созданные в документах Google. Кроме того, я не думаю, что могу получить один и тот же файл. – Daniel
Хорошо, если вы можете прочитать контент, тогда вы можете записать его в текстовый файл, так что же в этом проблема? –