Cordova Inappbrowser и входной файл

У меня есть приложение для iOS и Android, и я загружаю внешний сайт внутри своего приложения (этот внешний сайт тоже мой). Моя проблема в том, что на этом сайте есть функция загрузки файлов, и эта функция не работает на Android (она работает на iOS). Я видел, что это нормальное поведение на Android, но есть ли способ заставить его работать, или это определенно не вариант? Спасибо

РЕДАКТИРОВАТЬ 1

Я попытался создать новое приложение с простой страницей, подобной этой (размещенной на AWS):

<html>
<head>
    <title>Upload Test !</title>
</head>
<body>
    <div>Upload Test</div>
    <div>
        <input type="file" id="imgFile" name="files[]" accept="image/x-png, image/gif, image/jpeg">
    </div>      
</body>

и я добавил этот скрипт в свой созданный index.html в моем проекте Cordova.

    <script type="text/javascript">
        document.addEventListener("deviceready", function(event) {
            console.log('TEST CONSOLE LOG !');
            var url = 'https://s3-eu-west-1.amazonaws.com/***/file-upload.html';
            ref = window.open(url, "_blank", "location=no,toolbar=no,zoom=no,hidden=yes");

            ref.addEventListener('loadstop', function () {
              ref.show();
            });
            ref.addEventListener('loaderror', function () {
              ref.close();
              ref = undefined;
            });
        }, false);
    </script>

Это не работает на моем Nexus 5 (Android M).

 Gandhi05 июн. 2016 г., 16:33
Выручить очень сложно, если кто-то не увидит, какой код вы пробовали до сих пор.
 Julian Le Calvez05 июн. 2016 г., 18:37
У меня есть простой <входной файл (по умолчанию), который загружается с удаленной веб-страницы внутри моего приложения. Он не открывает файловый менеджер на Android (он работает на iOS). Я попробовал внутри Chrome на моем устройстве Android, и это работает, это действительно проблема inappbrowser. Вот тег html: <input type = "file" id = "imgFile" name = "files []" accept = "image / x-png, image / gif, image / jpeg">
 Julian Le Calvez06 июн. 2016 г., 17:14
Я отредактировал свой пост, добавив новый тест со свежим приложением Cordova. Это не работает на моем Nexus 5 с Android M. это нормально?
 Arpit Vasani06 июн. 2016 г., 11:41
Да, входной файл имеет проблему в некоторых версиях Android. Но работает в последних версиях L и M. Обходной путь для старых устройств - это обернуть его в iFrame.
 Gandhi05 июн. 2016 г., 18:42
Насколько мне известно, входной тип файла, похоже, имеет определенные проблемы с Android. попробуйте использовать плагин выбора изображений, если это возможно

Ответы на вопрос(2)

так и с iOS, которая препятствует загрузке файлов при нажатии на тег ввода файла, например, в inappbrowser:

<input type="file">

Для обоих есть несколько исправлений, которые я объединил в одном месте, чтобы всем, кто столкнулся с этой проблемой, было легко. Вы должны быть в состоянии изменить свой файл config.xml, чтобы использовать его, включая это:

<plugin spec="https://github.com/jverlee/cordova-plugin-inappbrowser-camera.git" version="1.1.0" source="git" />

Вместо стандартного плагина inappbrowser.

Более подробную информацию можно найти здесь:https://github.com/jverlee/cordova-plugin-inappbrowser-camera

 fzyzcjy15 июл. 2017 г., 10:36
Извините, но ваше руководство по установке не может работать в Cordova. Я обеспечил улучшение, которое может работать на моей машине. Видеть это:github.com/jverlee/cordova-plugin-inappbrowser-camera/issues/9

@Verlкод довольно хорош! Тем не менее, он не может быть установлен через его руководство по установке ... Так вот мой:

cordova plugin add https://github.com/jverlee/cordova-plugin-inappbrowser-camera.git

Кстати, если я буду следовать его руководству, я получу только:Ошибка: невозможно прочитать свойство 'variable' из undefined

Ваш ответ на вопрос