Java MediaStore光标在Android 10中不显示非媒体文件

Java MediaStore光标在Android 10中不显示非媒体文件,java,android,file,mediastore,database-cursor,Java,Android,File,Mediastore,Database Cursor,我正在尝试获取外部存储器中的文件并在应用程序中显示。我可以得到媒体文件没有任何问题,但我不能得到非媒体文件在安卓10。附上下面的获取pdf的代码片段。当我看到计数时,它是0,即使我的外部存储中有pdf文件。Android 10就是这样+ Cursor cursor = getContext().getContentResolver().query( MediaStore.Files.getContentUri("external"),

我正在尝试获取外部存储器中的文件并在应用程序中显示。我可以得到媒体文件没有任何问题,但我不能得到非媒体文件在安卓10。附上下面的获取pdf的代码片段。当我看到计数时,它是0,即使我的外部存储中有pdf文件。Android 10就是这样+

 Cursor cursor = getContext().getContentResolver().query(
                    MediaStore.Files.getContentUri("external"), // Table to query
                    new String[]{MediaStore.Files.FileColumns.DATA}, // file location
                    MediaStore.Files.FileColumns.MIME_TYPE + "=?", // selection clause
                    new String[]{ MimeTypeMap.getSingleton().getMimeTypeFromExtension("pdf") }, // selection arguments
                    MediaStore.Files.FileColumns.DATE_MODIFIED + " DESC" // ordering)
            ); 
  

由于Android 10,您无法使用
MediaStore
加载媒体以外的文件(音频、视频、图像)

打开文档的正式方法是使用
操作\u打开\u文档
,让用户从文件选择器中选择一个文件。
检查文档:

Android 10上没有.DATA列。即使我使用不同的投影,它也不起作用。我认为这与.DATAPut无关。在所有参数中都放置一个
null
。你的PDF到底在哪里?