Если у вас есть Uri, и вам нужен Bitmap, вы могли бы теоретически сделать это
Bitmap troublinglyLargeBmp =
  MediaStore.Images.Media.getBitmap(
      State.mainActivity.getContentResolver(), theUri );
но он будет разбиваться каждый раз,
поэтому вы делаете это.........
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 4;
AssetFileDescriptor fileDescriptor =null;
fileDescriptor =
  State.mainActivity.getContentResolver().openAssetFileDescriptor( theUri, "r");
Bitmap actuallyUsableBitmap
  = BitmapFactory.decodeFileDescriptor(
    fileDescriptor.getFileDescriptor(), null, options);
Utils.Log("'4-sample' method bitmap ... "
   +actuallyUsableBitmap.getWidth() +" "
   +actuallyUsableBitmap.getHeight() );
что фантастический и является рабочим решением.
Обратите внимание на коэффициент "четыре", который имеет тенденцию работать хорошо, в текущих условиях (2014) с типовыми размерами камеры и т.д. ОДНАКО, было бы лучше угадать или точно узнать размер данных изображения в theUri, а затем используя эту информацию, разумно выберите этот коэффициент.
Короче говоря, как правильно выбрать масштабный коэффициент при загрузке Uri?
Android-эксперты, это известная проблема, есть ли решение? Спасибо своим друзьям iOS- > Android!:)
