Delete / trash file from android using android.gms.drive

六月ゝ 毕业季﹏ 提交于 2019-12-02 05:59:44

Delete is supported by the Google Drive Android API as of Google Play services 7.5 using the DriveResource.delete() method.

Delete is permanent, and recommended only for App Folder content, where trash is not available.

UPDATE (May 2015)
Addition of trash / delete functionality to GDAA 7.5 renders the answer below irrelevant.

ORIGINAL ANSWER:

The sequence is:

  1. Get DriveId from GDAA (file or folder)
  2. Get ResourceId from DriveId.getResourceId() (may be null if file/folder is not committed yet)
  3. use ResourceId (rsid) in this REST call:
com.google.api.services.drive.Drive.files().trash(rsid).execute()
com.google.api.services.drive.Drive.files().delete(rsid).execute()
  1. finally realize that you can't do it since you'll see the file in GDAA long after it has been deleted / trashed. You can even write in it, create files in that folder you've just trashed, ... That's why people introduced the "clear contents and forget" strategy nobody likes.

Needless to say, this applies to any delete / trash action you may perform outside of GDAA universe (manually trash/delete using web interface etc...)

So, to wrap it up. 'pinoyyid' is right, each of the APIs is different and the GDAA can not replace the REST (yet). You'll quickly realize it when you try to work a little deeper, like getting thumbnail url, fighting latency issues etc... On the other hand GDAA has advantages, since it can work off-line without your app handling it. When using REST, your app should do all the Drive calls in some kind of sync service to separate your UI actions from network issues (delays, off-line, ...). GDAA handles this for you, but on it's own timing terms. And with no delete functionality.

I put a piece of code on github, that has both these API's used side-by-side and you may use it to play with different scenarios before committing yourself to one of them.

It would be nice to hear clearly from Google what the final strategy is, i.e.

  • Is GDAA going to replace REST one day, after all the REST functionality is in?
  • Will they retire the REST afterwards?

Good Luck

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!