Minificar el código de una aplicación Cordova

Ver el código fuente de una aplicación híbrida es muy fácil, basta con abrir el .apk de la aplicación con winrar y tenemos todo el código original. Así que minificar y ofuscar el código antes de subirlo a una tienda de aplicaciones es una buena idea, se puede seguir accediendo al código igualmente, pero ya tienen que tomarse mas molestias para poder leerlo.

Esto se puede aplicar a cualquier proyecto que funcione sobre Cordova, ya sea PhoneGap o Ionic Framework

Vamos a crear un hook que se ejecute antes de compilar la aplicación, que será el encargado de hacer todo este proceso automáticamente cada vez que lancemos o compilemos la aplicación. Dentro del directorio principal de nuestro proyecto tenemos que tener una carpeta llamada “hooks“, vamos a crear el siguiente fichero: “hooks/before_prepare/02_jshint.js

Nota: En Linux y Mac es necesario dar permisos de ejecución a este archivo.

Dentro de 02_jshint.js vamos a meter el siguiente código:

Este script solo se va a ejecutar sobre www/js, puedes cambiarlo para agregar mas carpetas si lo necesitas. Cualquier error que se encuentre sobre los ficheros .js se va a mostrar por pantalla y el script detendrá cualquier acción posterior, por lo que la aplicación no se ejecutará con errores.

El fichero 02_jshint.js necesita dos librerias NodeJS para funcionar, desde la raíz del proyecto ejecutamos:

Ofuscar el código para hacerlo mas ilegible

Vamos a usar otro modulo NodeJS:

Cuando termine la instalación verás que se a creado el fichero hooks/after_prepare/uglify.js, de nuevo en Linux y Mac es necesario dar permisos de ejecución a este fichero.

Se puede probar que el script funciona correctamente con cordova prepare o cordova build [platform]

Fuentehttp://ionicframework.com/blog/minifying-your-source-code/