Im создает приложение, которое должно декодировать большие изображения в растровые изображения, которые будут отображаться в ImageView.
Если я просто попытаюсь их декодировать прямо в растровое изображение, я получаю следующую ошибку "Растровое изображение слишком велико, чтобы быть загруженным в текстуру (1944x2592, max = 2048x2048)"
Таким образом, чтобы показывать изображения с высоким разрешением im, используя:
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);
}
Это работает, но я действительно не хочу, чтобы hardcode максимальное значение 2048, как и в if-statement, но я не могу узнать, как получить максимально допустимый размер растрового изображения для устройства
Любые идеи?