我有一个 File 变量,它实际上是一个文件夹路径。我想得到它的 Uri。如果我使用
Uri.fromFile(myFile);
我得到类似“file:///mnt/sdcard”的东西。我想得到的是内容方案 Uri,比如“content://com.externalstorage/”,这样我就可以将它与 DocumentFile 一起使用。
我有一个 File 变量,它实际上是一个文件夹路径。我想得到它的 Uri。如果我使用
Uri.fromFile(myFile);
我得到类似“file:///mnt/sdcard”的东西。我想得到的是内容方案 Uri,比如“content://com.externalstorage/”,这样我就可以将它与 DocumentFile 一起使用。
1.您必须使用此代码访问存储访问框架
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
startActivityForResult(intent, 99);
2.之后您将获得访问存储访问框架,您需要根据需要选择文件。然后它将为您提供该文件 onActivityResult 的 uri。
if (requestCode == 99 && resultCode == Activity.RESULT_OK) {
Uri uri = null;
if (resultData != null) {
uri = resultData.getData();
}
}
3. 最后你得到了 uri 文件。