I have an app on android that does some file sharing using cloud storages like dropbox. To start sharing I throw android.intent.action.SEND
.
On the list that is shown I see the Google Drive app (previously installed), so I try sending the file to it - it works ok, the file appears in the Drive list.
Then, on another device I want to read this file. I throw the
android.intent.action.GET_CONTENT
intent, choose Drive and then don't know how to get to file. I receive an Uri something like this:
content://com.google.android.apps.docs.files/exposed_content/6jn9cnzdJbDywpza%2BlW3aA%3D%3D%0A%3BRV%2FaV94o%2FCcW4HGBYArtwOdHqt%2BrsYO4WmHcs6QWSVwp%2FXogkRAgit7prTnfp00a%0A
which I don't know how to transform to physical file path. How could I get the file contents from this?
I played around the content provider and can get the file name, but not the full path or anything else.
For the dropbox I get the file://
style uri, straight and simple, works well.
I was also facing the same problem. I used follow code to get file path from Google Drive file. It works for SkyDrive and also for DropBox.
I'm using the intent to choose the file. Here is my code to choose the file.
My code works fine and when I get file from internal or external memory. I want to get file from Google Drive with same code.
It is sending you uri of content provider which you can use it with ContentResolver,for example such as:
Edit: For getting real path names use the solution provided below
Android: Getting a file URI from a content URI?