¿Cómo usar los complementos específicos de la plataforma en el flujo de trabajo de Dev Cordova app?

Soy nuevo en desarrollar aplicaciones con Cordova, pero tengo mucho trabajo bien. Acabo de implementar con éxito el 'phonegap-facebook-plugin' . Sin embargo, siguiendo las instrucciones, coloqué muchos files (desde el SDK de Facebook y el complemento) directamente en el directory / platform / ios /, lo que significa que en lugar de trabajar en el directory raíz / www / y build ambas plataforms a la vez, mi código es ahora less 'flexible' y es específico de la plataforma. ¿Hay una mejor forma de estructurar mis files y / o flujo de trabajo? ¿Me estoy perdiendo un paso o un truco?

Aprecio cualquier ayuda.

A partir de Cordova 3.x, hay una nueva command-line interface cordova que lo ayudará mucho a organizar el código para múltiples sistemas operativos. Usarás la CLI para crear un proyecto y luego realizarás todo tu desarrollo en la carpeta principal /www/ . A continuación, puede usar la CLI para ejecutar commands que copyrán su /www/ code en el lugar apropiado para activos web para cada plataforma (como /myApp/assets/www/ para Android).

Mira mi respuesta aquí: ¿Debería declararse un plugin phonegap en el file config.xml?

Hablo de cómo se crea la estructura de directorys, cómo debes controlar la versión /www/ y /merges/ folders, y cómo puedes pensar en cualquier cosa en /platforms/ como un artefacto de construcción. (Las cosas en esta carpeta no son necesariamente artefactos de construcción, pero es útil pensar de esa manera si está haciendo un trabajo multiplataforma).

Si solo está desarrollando para una sola plataforma, o está pirateando las piezas nativas de la plataforma, entonces estará dentro de estas carpetas cambiando cosas. No recomiendo este enfoque para la mayoría de las personas, porque la gran mayoría de los casos de uso están creando aplicaciones multiplataforma con HTML5.

He estado trabajando en la documentation para aclarar esto. La nueva guía general le ayudará a: https://github.com/mbillau/cordova-docs/blob/30fb71d11b4db5d34b3ff1c48a16443d5fed1be3/docs/en/edge/guide/overview/index.md (Si lo lee y aún tiene preguntas, por favor hágamelo saber para poder abordar esas preguntas en la documentation y todos se beneficiarán).

EDIT : No vi que la mayor parte de tu pregunta era sobre complementos. Lo que debería suceder es que si tiene un complemento actualizado para Cordova 3.x, entonces debería poder instalarlo con el cordova plugin add ... Esto debería copyr los files nativos y .js en la carpeta /plugins/ para usted. Luego, cuando haga la cordova prepare , copyrá los files de plataforma específicos para ese complemento en la carpeta de la plataforma específica. Por lo tanto, no debería tener que copyr files por todas partes. Estoy bastante seguro de que el complemento que estás utilizando no es compatible con 3.x, en cuyo caso … No estoy realmente seguro de qué decirte. Ejecutar preparación debería simplemente copyr sobre files, no borrar files que ya están allí … pero no estoy seguro.