Concatenar y minify los archivos del plugin cordova / phonegap

Estoy construyendo una aplicación Cordova 3.5.0. Yo uso grunt para construir una aplicación web minified, luego utilizo cordova CLI y cordova ganchos para construir un paquete de plataforma específica. Utilizo más de 10 plugins diferentes, algunos oficiales oficiales de Córdoba y algunos de costumbre. Me pregunto cómo concatenar y minify los archivos de JS de los enchufes con mis otras bibliotecas del tercer partido.

Después de ejecutar cordova prepare veo un archivo generado cordova_plugins.js con el siguiente contenido:

 cordova.define('cordova/plugin_list', function(require, exports, module) { module.exports = [ { "file": "plugins/org.apache.cordova.globalization/www/GlobalizationError.js", "id": "org.apache.cordova.globalization.GlobalizationError", "clobbers": [ "window.GlobalizationError" ] }, { "file": "plugins/org.apache.cordova.globalization/www/globalization.js", "id": "org.apache.cordova.globalization.globalization", "clobbers": [ "navigator.globalization" ] } ]; module.exports.metadata = // TOP OF METADATA { "org.apache.cordova.globalization": "0.3.1" } // BOTTOM OF METADATA }); 

Sé cómo minify y generar un solo archivo con estos plugins, pero no cómo ajustar el proceso de compilación cordova para obtener todos los clobbers de un solo archivo, pero diferentes paquetes. Mi primer pensamiento es que todo el proceso tiene que realizarse en un paso AFTER_PREPARE, dentro de la carpeta platforms/<platform>/assets/www

Minificación mejora el rendimiento por dos razones:

Tamaño de archivo reducido (ya que elimina comentarios y espacios en blanco innecesarios), por lo que el script se carga más rápido. Incluso si está incrustado en el.

Se analiza más rápidamente, ya que los comentarios y espacios en blanco no tienen que ser explícitamente ignorados (ya que no están allí).

PERO, sólo va a hacer una diferencia real si el archivo es grande (2000 líneas o más), como jquery. No hay punto de minifying un archivo de 20 líneas.

  • ¿Alternativas al uso de la base de datos Web SQL para almacenar gran cantidad de datos en la aplicación Phonegap?
  • ¿Hay una alternativa a getUserMedia para Phonegap Android (local)?
  • Obtener la ruta absoluta a la carpeta de activos en PhoneGap
  • Cómo llamar a la función en el marco iónico + angularjs?
  • AAC con PhoneGap en Android
  • Cómo cargar e importar un archivo CSS / JS desde el teléfono en el teléfono?
  • La velocidad es "nula" con el complemento de geolocalización en Android 5+
  • Cordova Android status Bar configurado para transparente
  • Pasar y devolver los valores de javascript y android y utilizarlos como plugin de brecha de teléfono
  • Aplicación phonegap con integración Smart Card
  • ¿Cómo puedo superponer una vista nativa encima de CordovaWebView de PhoneGap en Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.