Está en la página 1de 2

Cmo reducir el tamao de las Apps de

Unity 5 en iOS?
Buenos das a todos. La semana pasada escrib ms de manera terica y reflexiva acerca
de la accesibilidad y la usabilidad en los sistemas de informacin. Esta semana quiero
dirigir mi punto de atencin a los desarrolladores de Unity 3D 5 que exportan sus Apps
para iOS, y de una manera prctica, explicarles el problema que hemos tenido en el
equipo tcnico de Mtica Technology respecto al gran tamao de la App en iOS y
aportando una solucin al respecto.
En la anterior versin de nuestra App MiRA Realidad Aumentada, la 1.2, la App
ocupa 97,3 MB. En la nueva versin, al exportar el proyecto desde el motor de
videojuegos Unity 5 y generando el proyecto de XCODE correspondiente, el archivo
.ipa de la App ocupaba nada ms y nada menos que 87,4 MB. Mientras que en la
versin de Android, exactamente igual, ocupa unos 25 MB aproximadamente.
Esta reduccin ha sido considerable teniendo en cuenta que se han aadido nuevas
funcionalidades y se han optimizado Assets del proyecto. Pero lo realmente curioso,
es que segn pudimos ver en el log de Unity 3D (ubicado aqu en MAC:
~/Library/Logs/Unity/Editor.log) la App ocupaba 32 MB al salir de Unity 5.
Entonces dnde est el problema? Pues en nuestro caso nos sorprendimos bastante
cuando vimos que el problema es que XCODE generaba las LaunchImage en formato
PNG para adaptarlas a los diferentes formatos de iPhone e iPad, introduciendo en el
archivo .ipa varias imgenes de aproximadamente 2,5 MB cada una.
La solucin consisti en optimizar las imgenes (500 KB como mximo la imagen ms
grande) una vez exportado de Unity antes de realizar la accin Product/Archive en
XCODE, consiguiendo un archivo .ipa de 37 MB, bastante ms aceptable ya para
nosotros.
Otro de los problemas con los que nos encontramos fue que intentamos optimizar las
imgenes con Adobe Photoshop CC guardando las imgenes PNG para web, pero no
reduca nada, as que tuvimos que acudir a nuestro amigo GOOGLE, y encontramos una
herramienta totalmente gratuita, y slo disponible para MAC, que funciona muy bien
para realizar este tipo de tareas. Esta herramienta se llama ImageAlpha y se puede
descargar de aqu.
Para ver los archivos que hay que optimizar con seguridad, os recomiendo que exportis
la App como archivo .ipa(para ello necesitaris crear un Provisioning Profile de
Distribucin Ad Hoc en el Member Center de Apple), descomprimis el archivo .ipa
para ver el archivo compilado de la App y despus mostris el contenido del paquete
(pulsando con el botn derecho del mouse sobre el archivo contenido en el .ipa). As
veris todos los archivos que conforman vuestra App y podris averiguar cul es el
problema exacto de vuestra App.
Ahora vamos con la solucin, qu imgenes tenemos que optimizar? En definitiva, la
respuesta es simple:

1. Raz del Proyecto de XCODE: Optimizar las imgenes "LaunchScreenImageLandscape.png" y "LaunchScreenImage-Portrait.png" con ImageAlpha,
asignndole 16 colores en vez de 256 (medir segn la calidad de la imagen) y
guardando la imagen mediante el comando Save as y marcando la opcin
ImageOptim.
2. /<RAIZ_PROYECTO_XCODE>/UnityIphone/Images.xcassets/LaunchImage.launchimage: Optimizando cada imagen
contenida en esa carpeta configurando 16 colores y marcando tambin la opcin
ImageOptim.
No obstante, si tuvierais alguna duda sobre el proceso, no dudis en contactarme
mediante el e-mail joaquin.duro@miticatechnology.com y os contestar lo antes
posible.
Eso es todo de momento, espero que os sirva de utilidad desarrolladores y nos vemos la
semana que viene. Saludos.