É comum ter uma certa dependência de assets como imagens ou sons, em jogos ou até mesmo em aplicações web e apps.

O tamanho dos assets prejudicam na entrega de conteúdo da aplicação, impactando a performance. Lembrando que no Brasil não há grande cobertura de 4G em alguns pontos podemos até nomear de 0,5G.

Por isso é muito importante cuidar desse garoto mimado que é o nosso bundle, sempre quer mais e mais conteúdo. Ele adora quando você baixa aquela biblioteca de sons ou imagens e usa 10% ou menos.

via GIPHY

Com as dicas abaixo é possível reduzir o seu bundle com ferramentas Open Source.

1- Reduzindo o audio

O ffmpeg dispensa comentários, além de converter vídeos, é possível converter o áudio aplicando configurações e codecs.

Como instalar?

Para ubuntu e derivados:

sudo apt install ffmpeg

Exemplo de conversão.

ffmpeg -i <origem>.mp3 -acodec libmp3lame -ac 2 -ab 64k -ar 44100 <destino>.mp3

Utilizei esta configuração para reduzir o tamanho de arquivos de efeitos especiais e tive um ganho de mais de 50%.

Documentação

2- Reduzindo imagens

Como instalar?

Para ubuntu e derivados:

sudo apt install optipng

Ou instale diretamente pelo código-fonte:

cd /tmp
wget http://prdownloads.sourceforge.net/optipng/optipng-0.7.7.tar.gz
tar zxvf optipng-0.7.7.tar.gz
cd optipng-0.7.7/
./configure
make && sudo make install

Como utilizar

optipng *.png

Utilizando a configuração padrão também obtive bons resultados na otimização dos sprites.

Manual de configurações

Conclusão

As configurações básicas reduziram a apk de um jogo de 27 megabytes para 16 megabytes.

Até a próxima e cuide bem do seu bundle ou...

via GIPHY