Как изменить параметры выбора файлов в веб-просмотре?

В моем приложении я использую страницу веб-просмотра, на которой пользователи могут выбирать файлы для загрузки. Это только показывает два варианта Camera а также Documents, Но в Google Chrome или даже в других приложениях для просмотра веб-страниц есть больше опций, таких как voice recorder,

я использую WebChromeClient в качестве базы для моих страниц. Я использовал startActivityOpenChooser перед подсказкой для открытия файлов, которую я считаю, что эта функция - все, что мне нужно изменить, если это возможно.

// openFileChooser for Android < 3.0
public void openFileChooser(ValueCallback<Uri> uploadMsg) {
    openFileChooser(uploadMsg, "");
}
...
public void startActivityOpenChooser(String acceptType){
    File imageStorageDir = new File(mainActivity.getExternalCacheDir(), "user_upload_files");

    if (!imageStorageDir.exists()) {
        // Create user_upload_files at sdcard
        imageStorageDir.mkdirs();
    }

    // Create camera captured image file path and name
    File file = new File(imageStorageDir + File.separator + "IMG_" + String.valueOf(System.currentTimeMillis()) + ".jpg");
    mainActivity.mCapturedImageURI = Uri.fromFile(file);

    // Camera capture image intent
    final Intent captureIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    captureIntent.putExtra(MediaStore.EXTRA_OUTPUT, mainActivity.mCapturedImageURI);

    Intent i = null;
    if (Build.VERSION.SDK_INT < 19) {
        i = new Intent();
        i.setAction(Intent.ACTION_GET_CONTENT);
    } else {
        i = new Intent(Intent.ACTION_OPEN_DOCUMENT);
        i.addCategory(Intent.CATEGORY_OPENABLE);
    }
    i.setType("*/*");

    // Create file chooser intent
    Intent chooserIntent = Intent.createChooser(i, mainActivity.getResources().getString(R.string.choose_file_for_upload));

    // Set camera intent to file chooser
    chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, new Parcelable[]{captureIntent});

    // On select image call onActivityResult method of activity
    mainActivity.startActivityForResult(chooserIntent, MainActivity.FILECHOOSER_RESULTCODE);
}

Вот изображение, показывающее разницу: IMG

0 ответов

Другие вопросы по тегам