如何从谷歌驱动器获取图像内容网址?

时间:2016-05-17 12:30:14

标签: android google-drive-api

我想从谷歌驱动器中选择图像文件,当我选择图像文件时,我想获取图像的内容网址。

当我浏览驱动器文档时,很难识别所需的文档。我还提到了很多其他的例子。基于此我编码如此。

@Override
public void onConnected(Bundle bundle) {
    try {
        if (pDialog != null && pDialog.isShowing())
            pDialog.dismiss();
        IntentSender intentSender = Drive.DriveApi
                .newOpenFileActivityBuilder()
                .setMimeType(new String[]{"image/jpeg", "image/png", "image/html"})
                .build(mGoogleApiClient);
        getActivity().startIntentSenderForResult(
                intentSender, REQUEST_CODE_OPENER, null, 0, 0, 0);
    } catch (IntentSender.SendIntentException e) {
        Log.w("", "Unable to send intent", e);
    }
}

因此,当我选择图像文件时,我将重定向到onActivityResult

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == 1) {
        mFileId = (DriveId) data.getParcelableExtra(
                OpenFileActivityBuilder.EXTRA_RESPONSE_DRIVE_ID);
        String url = "https://docs.google.com/uc?id=" + mFileId.getResourceId();
    }
}

这里基于文件ID将文件ID与文档中提到的url连接起来。

我收到了https://docs.google.com/uc?id=0B6cjR1AhhqLDTDdqdG0xdVB2aTg

这样的网址

当我在没有登录的情况下在浏览器中加载此URL时,它会带来图像。

这是未从根文件夹中选择的图像。在根文件夹中,我创建了一个文件夹,并从中选择了此图像。

问题是,当我从根文件夹中选择图像时,我会获取一个图像的网址https://docs.google.com/uc?id=0B5bAaaRm0Rq9TTBCRUx5VWRiU3NuYVV5NXdDTmkzclRGaGg0

此网址正在询问登录权限。

当我在浏览器中加载这两个图片时,我会收到https://doc-0g-2o-docs.googleusercontent.com/docs/securesc/dm4h1t8p59kkqd9vovoeu6v6ncptndiv/jb05c9rgr3ko1ba5edb8uo4vf2c8gifj/............

这样的网址

有人可以指导如何获取所有图片的googleusercontent网址吗?

因为一旦我加载了从根文件夹中选择的图像网址,我就获得了googleusercontent网址。之后我退出并再次尝试使用googleusercontent网址。这是工作。但我不知道如何获取googleusercontent网址。很乐意帮助解决这个问题。

0 个答案:

没有答案