2

我正在尝试使用这个:

https://developers.google.com/drive/android/get-started

这是适用于 Android 的 Google 驱动器 SDK。

我希望能够列出用户 Google 云端硬盘帐户中的所有文件。但只有应用程序创建的(或用户选择的)文件和文件夹的访问权限。

mGoogleApiClient = new GoogleApiClient.Builder(this)
                .addApi(Drive.API)
                .addScope(Drive.SCOPE_FILE)
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .build();

Google Devs 能否告诉我是否可以使用此 SDK 列出用户文件和文件夹并检索元数据?只允许 SCOPE_FILE 访问。

如果没有,将来是否会提供更多访问权限?

我已经尝试(并且惨遭失败)使用 Java 库,但我无法让它工作。所以希望我能发现新的 SDK 将包含其他权限(Java 库会这样做)。

谢谢

4

2 回答 2

2

我的解决方案是使用google-http-java-client库和google-api-client库而不是 google drive SDK for Android。主要好处是您可以访问 Google 驱动器上的所有文件。下面是在代码中创建 Drive 对象的部分代码,然后您可以使用该对象访问文件。

            final GoogleCredential credential = new GoogleCredential.Builder()
                .setTransport(httpTransport).setJsonFactory(jsonFactory)
                .addRefreshListener(refreshListener)
                .setClientSecrets(clientId, clientSecret).build()
                .setRefreshToken(refreshToken).setAccessToken(accessToken);

        // Create a new authorized API client
        final Drive drive = new Drive.Builder(httpTransport, jsonFactory,
                credential).build();
于 2015-01-23T16:55:52.587 回答
1

如您所见,目前 Android 上只有 SCOPE_FILE 可用。用户更喜欢您拥有此范围,以便他们可以控制您的应用访问哪些文件。您应该能够使用提供的用户界面来允许您的用户浏览所有文件并选择他们想要与您的应用程序一起使用的文件。请参阅OpenFileActivity

于 2014-04-28T16:23:21.017 回答