我想从谷歌驱动器中选择图像文件,当我选择图像文件时,我想获取图像的内容网址。
当我浏览驱动器文档时,很难识别所需的文档。我还提到了很多其他的例子。基于此我编码如此。
@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网址。很乐意帮助解决这个问题。