Java 从Uri到Environment.DIRECTORY\u DCIM
用户通过以下代码选择目录:Java 从Uri到Environment.DIRECTORY\u DCIM,java,android,uri,environment,Java,Android,Uri,Environment,用户通过以下代码选择目录: 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); } @O
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
到环境。目录\u DCIM
以及如何
以不同的方式询问,我希望在用户选择DCIM目录时获得mypath
的变量Environment.DIRECTORY\u DCIM
。怎么能这样呢
现在,有可能从content://com.android.externalstorage.documents/tree/primary%3ADCIM 到Environment.DIRECTORY\u dci以及如何
不需要。返回的Uri
不必与文件对应(例如,它指向Google Drive中的文档)。即使它对应于一个文件,它也不必位于绑定到环境
的目录中(例如,它指向自定义目录中的文件)
请使用
Uri
谢谢您的及时回复。很高兴知道这是不可能的。我有一个使用Environment.DIRECTORY\u DCIM
的代码部分,即File imagedir=getExternalStoragePublicDirectory(Environment.DIRECTORY\u DCIM)代码>。然后是否可以让它使用mypath
作为Uri,如下所示:File-imagedir=getExternalStoragePublicDirectory(mypath)代码>?我尝试了文件imagedir=getExternalStoragePublicDirectory(mypath.toString())代码>但这不起作用。@Sam77:对不起,我不明白你的问题getExternalStoragePublicDirectory()
是环境
上的一种方法。它不接受任意值作为参数。我明白了。在这种情况下,我必须重新考虑我的代码。感谢您的帮助。Environment.DIRECTORY\u DCIM==“DCIM”getExternalStoragePublicDirectory(Environment.DIRECTORY\u DCIM)==/storage/emulated/0/DCIM您要求的是被诅咒的函数getRealPathFromUri()。
content://com.android.externalstorage.documents/tree/primary%3ADCIM