Код результата действия всегда равен 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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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