小编Pra*_*hia的帖子

如何使用 Android 中的 MediaStore.Files 从内部和外部存储中获取所有 .pdf 文件

  private List<PDFFileDetails> getPdfFilesFromDevice(Context context) {
    List<PDFFileDetails> listOfDirectories = new ArrayList<>();
    ContentResolver cr = context.getContentResolver();
    Uri uriExternal = MediaStore.Files.getContentUri("external");
    Uri uriInternal = MediaStore.Files.getContentUri("internal");

    String[] projection = null;

    String sortOrder = null; // unordered

    // only pdf
    String selectionMimeType = MediaStore.Files.FileColumns.MIME_TYPE + "=?";
    String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension("pdf");
    String[] selectionArgsPdf = new String[]{mimeType};
Run Code Online (Sandbox Code Playgroud)

在这里,我从内部存储而不是外部 sdcard 中获取所有 pdf 首先我尝试不使用 sdcard,然后我插入了 sdcard 但没有结果来自 sdcard

    Cursor allPdfFilesCursor = cr.query(uriExternal, projection, selectionMimeType, selectionArgsPdf, sortOrder);
    if (allPdfFilesCursor != null && allPdfFilesCursor.getCount() != 0) {
        allPdfFilesCursor.moveToFirst();
        do {
            int …
Run Code Online (Sandbox Code Playgroud)

pdf android mediastore android-contentprovider

4
推荐指数
1
解决办法
2743
查看次数