Код результата действия всегда равен 0 (отмена), если есть два или более действий для обработки намерения.Android

Форум для тех, кто программирует под Android
Гость
Код результата действия всегда равен 0 (отмена), если есть два или более действий для обработки намерения.

Сообщение Гость »


У меня проблема: когда я запускаюActivityForResult, чтобы сделать снимок, resultCode всегда равен Activity.RESULT_CANCELED (0), если есть два или более приложения камеры, которые могут обработать это намерение (появляется средство выбора приложения). Но если я установлю одно из них в качестве приложения по умолчанию, и в следующий раз оно не предложит мне выбор, все будет работать нормально, оно сделает снимок и обнаружит его в onActivityResult в моем фрагменте, который запустил startActivityForResult().
То же самое такое происходит, когда я пытаюсь открыть галерею, чтобы выбрать изображение. Если есть два приложения галереи, я выбираю одно из них, результат выбора изображения всегда равен 0.
Это код, который я использую для запуска приложения камеры:

Код: Выделить всё

Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
if (takePictureIntent.resolveActivity(getActivity().getPackageManager()) != null) {
startActivityForResult(takePictureIntent, AppConstants.TAKE_PICURE_CAMERA_REQUEST_CODE);
}


Источник: https://stackoverflow.com/questions/554 ... ities-to-h

Вернуться в «Android»