Android: максимально допустимая ширина и высота растрового изображения

Я создаю приложение, которое должно декодировать большие изображения в растровые изображения для отображения в ImageView.

Если я просто пытаюсь декодировать их прямо в растровое изображение, я получаю следующую ошибку «Растровое изображение слишком велико для загрузки в текстуру (1944x2592, max = 2048x2048)»

Поэтому, чтобы иметь возможность показывать изображения со слишком высоким разрешением, я использую:

Bitmap bitmap = BitmapFactory.decodeFile(path);

if(bitmap.getHeight()>=2048||bitmap.getWidth()>=2048){
    DisplayMetrics metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);
    int width = metrics.widthPixels;
    int height = metrics.heightPixels;
    bitmap =Bitmap.createScaledBitmap(bitmap, width, height, true);             
}

Это работает, но я на самом деле не хочу жестко задавать максимальное значение 2048, как сейчас в операторе if, но я не могу узнать, как получить максимально допустимый размер растрового изображения для устройства

Есть идеи?

Ответы на вопрос(5)

Ваш ответ на вопрос