从乌里到 Environment.DIRECTORY_DCIM

From Uri to Environment.DIRECTORY_DCIM

用户通过以下代码选择目录:

public void startChoose(View view) {
    Intent i = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE);
    i.addCategory(Intent.CATEGORY_DEFAULT);
    startActivityForResult(Intent.createChooser(i, "Choose directory"), 8010);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
      switch (requestCode) {
        case 8010:
            mypath = data.getData().toString();
            break;
    }
}

他的目录存储在 mypath 中,如下所示(例如使用 DCIM):

content://com.android.externalstorage.documents/tree/primary%3ADCIM

现在,可以从 content://com.android.externalstorage.documents/tree/primary%3ADCIMEnvironment.DIRECTORY_DCIM 吗?

不同的要求,当用户选择 DCIM 目录时,我想为 mypath 获取变量 Environment.DIRECTORY_DCIM。怎么做到的?

Now, is it possible to go from content://com.android.externalstorage.documents/tree/primary%3ADCIM to Environment.DIRECTORY_DCIMand how?

没有。您返回的 Uri 不一定对应于文件(例如,它指向 Google Drive 中的文档)。即使它对应于一个文件,它也不必驻留在绑定到 Environment 的目录中(例如,它指向自定义目录中的文件)。

请只使用Uri