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, но я не могу узнать, как получить максимально допустимый размер растрового изображения для устройства
Есть идеи?