Ich konnte eine Google Drive-Dateiauswahl einrichten, damit ich den Inhalt jeder vom Benutzer ausgewählten Datei lesen kann. Allerdings möchte ich in der Lage sein, die vom Benutzer ausgewählten Google Docs-Dateien als Textdateien herunterzuladen und deren Inhalt dann zu lesen, obwohl ich nur mithilfe der Drive Rest-API, von der ich glaube, dass sie getrennt ist, Lösungen finden kann Google Drive API für Android. Gibt es eine Lösung, die mir erlauben würde, dies zu tun? Derzeit lautet mein Code zum Herunterladen von Dateien wie folgt:Google Docs-Dokument als Textdatei mit Google Drive API für Android herunterladen
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);
}
}
Die Android-API ist ein Wrapper für die REST-API, sodass Sie ein File-Objekt erhalten können. Und können Sie ein Dokument öffnen und den Inhalt zu einem String lesen? –
Ich kann den Inhalt in einer Zeichenfolge beliebiger Dateien lesen, die in Google-Dokumenten erstellt wurden. Außerdem glaube ich nicht, dass ich das gleiche Dateiobjekt bekommen kann. – Daniel
Okay, wenn Sie den Inhalt lesen können, dann können Sie das in eine Textdatei schreiben, was genau ist das Problem? –