在Android上,我让用户选择文件:
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
startActivityForResult(intent, SOME_UNIQUE_ID_FOR_ON_ACTIVITY_RESULT);
当用户从SD卡中选择文件时,resultData中的onActivityResult是所选文档的uri:
uri = resultData.getData();
例如如果我从SD卡上的“照片”文件中选择文件“ dog.png”,则会得到以下URI:
content://com.android.externalstorage.documents/document/primary%3APhotos%2Fdog.png
我可以很容易地获得文件名的最后一部分。但是,当用户从“下载”部分选择文件时,uri如下所示:
content://com.android.providers.downloads.documents/document/297
如何获取文件名?