如何从DriveFolder(Api Google-Drive)打开内容?

时间:2017-02-02 22:47:24

标签: android google-drive-api google-drive-android-api

我问过这个问题,因为我打开Goog​​le中的文件夹内容时遇到问题,我希望能够打开其内容来获取数据并将其复制到另一个文件夹中。但我使用的方法给了我错误我不知道这个方法是否只适用于文件。

我当前的代码只打开文件的内容,因为我已经发表评论,我在这里输入错误:

private void readFile(DriveId fileDriveId) {

DriveFile file = fileDriveId.asDriveFile();

file.open(apiClient, DriveFile.MODE_READ_ONLY, null)
.setResultCallback(new ResultCallback<DriveApi.DriveContentsResult>() {
    @Override
    public void onResult(DriveApi.DriveContentsResult result) {
        if (!result.getStatus().isSuccess()) {
            Log.e(LOGTAG,"Error");
            return;
        }

        DriveContents contents = result.getDriveContents();

        BufferedReader reader =
            new BufferedReader(
                new InputStreamReader(contents.getInputStream()));

        StringBuilder builder = new StringBuilder();

        try {
            String line;
            while ((line = reader.readLine()) != null) {
                builder.append(line);
            }
        } catch (IOException e) {
            Log.e(LOGTAG,"Error");
        }

        contents.discard(apiClient);

        Log.i(LOGTAG, "YES": " + builder.toString());
    }

});  }

如果他们发现他们失败的地方或知道是否有其他方法可以实现目标。请评论。

1 个答案:

答案 0 :(得分:0)

如果您在获取Drive API中的文件夹内容时遇到问题,则可以尝试检查此Search a folder's contents。此外,此处说明了可以使用[DriveFolder.queryChildren](https://developers.google.com/android/reference/com/google/android/gms/drive/DriveFolder#queryChildren(com.google.android.gms.common.api.GoogleApiClient,com.google.android.gms.drive.query.Query)查询文件夹内容。

有关详细信息,请查看此documentation有关如何使用文件内容的信息。