Como um APK de 95 MB virou 21 MB
Num app mobile feito com Capacitor, o APK chegou a 95 MB. Para um app que, por dentro, é uma WebView carregando um front em React, esse número não fazia sentido.
O motivo está em como o Capacitor monta o pacote: o cap sync copia o build web para dentro do projeto nativo, e copia tudo, inclusive todo chunk gerado pelo lazy loading, precisando dele ou não. Role a página para ver o que acontece com esse peso:
95 MB nas costas do celular
Esse era o peso do APK. O app é uma WebView, mas o pacote carregava muito mais do que ela abre.
A saída foi podar os chunks por alias antes do sync, deixando entrar no APK só o que o app mobile realmente carrega. De 95 MB, o pacote caiu para 21.
A lição vale além do Capacitor: toda ferramenta que copia tudo por segurança esconde um custo. E tamanho de binário é uma métrica que ninguém olha até o dia em que alguém precisa instalar o app.
Toda ferramenta que copia tudo por segurança esconde um custo.