Ни одно приложение не может выполнить это действие
Когда я пытаюсь вызвать неявное намерение с действием "Intent.ACTION_GET_CONTENT"
Я получаю это сообщение об ошибке "No apps can perform this action."
Заранее спасибо. Пожалуйста, смотрите мой код ниже.
Intent intent = new Intent();
intent.setType("*/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select File"), SELECT_FILE);
3 ответа
Проблема из раздела setType.
Это используется для создания намерений, которые указывают только тип, а не данные, например, чтобы указать тип возвращаемых данных.
не
intent.setType("*/*"); // Arise problem
Делать
intent.setType("image/*");
РЕДАКТИРОВАНИЕ
Вы можете попробовать с
Intent intent_open = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent_open.setType("image/* video/*");
Попробуй это
Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent.setType("video/*, images/*");
startActivityForResult(Intent.createChooser(intent, "Select File"), SELECT_FILE);
Вам нужно установить явный тип данных MIME для намерения. Например
Intent intent=new Intent(Intent.ACTION_PICK);
intent.setType("image/*"); //for image pick from gallery via intent
intent.setType("video/*"); //for video pick from gallery via intent