update - nougat android studio




"Tela: tentando desenhar um bitmap muito grande" quando o Tamanho de exibição do Android N for maior que Pequeno (6)

Mova sua imagem no drawable para mipmap-xxhdpi. Sua imagem está no formato bitmap; portanto, você deve colocá-la na pasta mipmap, para que funcione

Eu tenho um aplicativo publicado que está travando na inicialização no Android N quando a recém-introduzida configuração do OS do Display size é definida como um valor muito grande.

Quando olho para o logcat, vejo a seguinte mensagem:

java.lang.RuntimeException: Canvas: trying to draw too large(106,975,232 bytes) bitmap.

Rastreei o problema até um ImageView na minha primeira atividade, que mostra uma boa imagem de plano de fundo grande. A imagem em questão é 2048x1066 e está no meu diretório de drawables genérico, portanto, não importa a densidade, essa imagem será usada.

Tudo funciona bem quando a configuração do Display size da Display size é Small . Mas quando vou para o Default , ele pára de funcionar. Se eu trocar a imagem por uma menor, ela funcionará em Default , mas se eu for Large , ela deixará de funcionar novamente.

Meu palpite é que o ajuste do Display size faz com que o dispositivo se comporte como um dispositivo fisicamente menor com uma densidade de pixels mais alta. Mas não entendo o que devo fazer aqui. Se eu colocar imagens progressivamente menores para resoluções progressivamente mais altas, ela não ficará boa em telas realmente grandes. Ou não estou entendendo alguma coisa?

Qualquer ponteiro seria muito apreciado.


Não sei se isso ajudaria alguém, mas vou deixar aqui. No meu caso - o problema estava apenas em dispositivos Sumsung com Android 7 e o problema estava nas proporções da tela inicial. depois de alterar a altura para 1024 px - tudo funciona bem


No meu caso, resolvi o problema depois de adicionar o android:hardwareAccelerated="false" no applicationg do arquivo de manifesto.


Os arquivos de ícone são grandes demais para o Android ser carregado com eficiência e facilidade. O Android reconhece isso com seus algoritmos inteligentes.

Você pode redimensionar os arquivos de ícone usando o Final Android Resizer da asystat. Redimensione-os para "xhdpi" ou inferior.

Coloque as fotos redimensionadas em drawable ou substitua sobre os grandes arquivos de ícone existentes.

Então, você está pronto.


se você estiver usando o glide e estiver carregando 1k de imagens por vez ou algumas imagens, será um problema de glide ou o que você estiver fazendo para definir a visualização da imagem. você pode resolvê-lo apenas aplicando o tipo de escala no glide.


se você usar o Picasso, mude para Glide assim.

Remover picasso

Picasso.get().load(Uri.parse("url")).into(imageView)

Change Glide

Glide.with(context).load("url").into(imageView)

Mais eficiente







android-7.0-nougat