Cordova android 输入文件:无法访问设备上的某些目录

Cordova android input file: cannot access some directories on device

我的应用程序基于 Cordova,允许用户将图像和 PDF 文件上传到服务器。 我正在使用带有 Dropzone.js 插件的简单 <input type="file"> 进行布局和传输。它适用于 iOS 和 Android。单击按钮后文件管理器启动,您可以选择文件并上传。

问题是,在 Android 上,用户无法从文件选择器上部的目录中选择文件。我有一台 LG G4,所以我无法从最后的文件、Google 驱动器、图像、已下载的内存中进行选择。我可以毫无问题地从画廊、照片和文件管理器中进行选择,但不能选择该行上方的任何目录。

我有读取外部存储的权限。我在这里错过了什么?

这是测试仪的屏幕:

Dropzone html,它是最基本的。 Dropzone 不会在此处添加 input type=file,但很像 jQuery,它会在选择文件时即时添加。

<form action="file-upload" class="dropzone dropzone-form dz-clickable" rem="dropform" id="dropzone-form">
            <input type="hidden" name="userId" value.bind="user_id" class="au-target" au-target-id="164">
            <div class="text-center add_btn_wrapper">
                <a class="btn btn-default btn-md dz-clickable" rem="dropbutton">Select file</a>
            </div>
            <div class="dz-default dz-message">
                <span>Upload your scans</span>
            </div>
    </form>

Dropzone js 声明(我使用 Aurelia.js (es5/6) 作为前端框架):

this.zone = new Dropzone(
    _this.element.querySelector("[rem='dropform']"), { 
        url: this.auth.config.baseUrl + "../_uploader/file/upload",
        maxFiles: this.max_files,
        acceptedFiles: this.accepted_files,
        clickable: [_this.element.querySelector("[rem='dropbutton']"), _this.element.querySelector("[rem='dropform']")],
        dictDefaultMessage: this.label,
        addRemoveLinks: this.allow_remove,
        removedfile: (file) => { .... },
        init: function() {
            this.on("addedfile", (fx) => { .... });
            this.on("complete", (fx) => { .... });
        }
    });

在AndroidManifest.xml中:

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.MANAGE_DOCUMENTS"/>

好的,问题是由 acceptedFiles 参数引起的。对于桌面,我有 "image/*,.pdf" 并且它有效,但是具有此值的 cordova 感到困惑并限制了我的访问。对于移动设备,我现在只使用 "image/*",它可以正常工作。