我正在做一个Android项目,我试图利用谷歌驱动器API,我已经得到了它的大部分工作,但我有一个问题,我如何执行下载。
我找不到任何地方我如何获得文件ID,以便我可以执行下载。为了测试,我检索了驱动器帐户中的所有文件,并将它们添加到列表数组中,然后获得列表中第一个文件的ID。
然后,我将文件ID复制到下载文件的命令中,这成功地工作了,但我不知道如何获得我想下载的特定文件的文件ID。
下面是我用来下载文件的代码。
private void downloadFile()
{
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
try
{
com.google.api.services.drive.model.File file = service.files().get("0B-Iak7O9SfIpYk9zTjZvY2xreVU").execute();
//FileList file = service.files().list().execute();
//List<com.google.api.services.drive.model.File> fileList = file.getItems();
//com.google.api.services.drive.model.File fileItem = fileList.get(0);
//Log.d("FileID" , fileItem.getId());
//Log.d("Count", "Retreived file list");
if (file.getDownloadUrl() != null && file.getDownloadUrl().length() > 0)
{
HttpResponse resp = service.getRequestFactory().buildGetRequest(new GenericUrl(file.getDownloadUrl())).execute();
InputStream inputStream = resp.getContent();
writeToFile(inputStream);
}
}
catch (IOException e)
{
Log.e("WriteToFile", e.toString());
e.printStackTrace();
}
}
});
thread.start();
}
0b-IAK7O9SFIPYK9ZTJZVY2XREVU
是我下载的文件的文件ID,我在做列表并选择第一个文件时检索了该文件,但是我怎么能说我想下载File_1并获得它的ID,然后将它传递给service.get().execute函数。
基本上,我的最终目标是在我的应用程序中,我上传一个XML文件到Google Drive,然后下载该文件。它将只有一个文件,并将始终具有相同的名称。我是马上去做,还是有更好的方法来实现我正在努力做的事情?
在我看来,获得Google Drive文件ID的最简单和最快的方法是从Web上的Google Drive。右键单击文件名并选择获取可共享链接。链接的最后一部分是文件ID。然后你就可以取消分享了。
我在做一个简单的项目上传谷歌驱动器上的文件。然后我需要“显示”这个文件给用户,通过使用html标记,这我需要知道URL到我的图像。但我不知道怎么弄。我试着添加 https://drive.google.com/file/d/
我使用的是linux Ubuntu。
这是我收到的错误
我是否需要登录到google cloud来访问身份验证令牌或凭据的API