android - Desarrollando con Eclipse y Phonegap/Cordova 3
cordova-3 (3)
Además de la solución anterior, creé una configuración de ''herramientas externas'' que ejecuta la utilidad del teléfono con las opciones ''desarrollo local de Android'' y una variable de entorno PATH configurada en ''/ opt / local / bin: / usr / bin: / bin'' para mi Mac A partir de ahí, instalé las herramientas Eclipse CDT y usé su función ''Launch Group'' para ejecutar la herramienta externa desde el proyecto de nivel superior antes de llamar a una depuración en el proyecto específico de la plataforma.
parece funcionar bastante bien. Desafortunadamente, el proyecto de nivel superior no "recuerda" la ejecución del Grupo de inicio, por lo que tengo que seleccionarlo del menú desplegable Depurar cada vez. Convertí el proyecto de nivel superior en JavaScript como una prueba, pero no pareció ser de ayuda y las ''Configuraciones de ejecución / depuración'' en Propiedades del proyecto están en gris.
Parece que la documentación es un poco escasa y te aseguro que he tratado de encontrar esto en línea, pero realmente no entiendo cómo se supone que el proceso de desarrollo funciona con phonegap y eclipse.
Seguí uno de los muchos tutoriales y creé el ejemplo Hello World usando la línea de comando cordova. Luego agregué la plataforma Android y ejecuté la compilación. Después de eso, agregué el bit andoridy como un proyecto en eclipse con respecto a la fuente existente como se indica utilizando las plataformas de subdirectorios / directorio de Android. Esto me permitió configurar el emulador y todo funcionó muy bien.
El problema que ahora tengo es con el proceso de desarrollo.
Entiendo que tengo que editar los archivos de nivel superior, no los que se presentan en el directorio de activos del proyecto en eclipse, ya que se crean con el comando "compilar". Estos archivos de nivel superior no existen en el proyecto que he creado en eclipse, ya que están por encima de la raíz del proyecto.
Entonces, mi pregunta es ... ¿puedo usar eclipse para desarrollar este proyecto de una manera sensata?
Lo que estoy haciendo en este momento es editar los archivos de www de android y luego bombearlos hasta la compilación de la nube, los estoy copiando de nuevo en el árbol. Esto parece una locura.
¿Hay alguna manera de tener los archivos reales disponibles en Eclipse para poder desarrollarlos y luego construir e implementar en un emulador fácilmente?
PD: ¿es mi imaginación o la construcción cordova tarda años?
Solución
Agregué una carpeta dentro del proyecto de Android que es un enlace a la ubicación de www en la raíz. Esto está bajo opciones avanzadas de crear una carpeta.
Para hacer esto, debes usar dos proyectos diferentes de eclipse. Uno que contiene la carpeta myProject / www para desarrollar (vamos a llamarlo ''proyecto de nivel superior'') y otro para su proyecto de plataforma específico (por ejemplo, Android, como ya lo hizo).
En su proyecto de nivel superior, escribe su código y, si lo desea, incluso puede depurar hasta cierto grado (funciones que no requieren cordova). Luego guarde y escriba cordova prepare
en su CLI. Luego puede cambiar a su proyecto de Android, presionar actualizar (F5) y ejecutar el emulador / dispositivo y buscar errores, y hacer cambios en el manifiesto de Android. Si desea cambiar el código, cambie de nuevo a su proyecto de nivel superior y haga lo mismo de nuevo.
Esto parece un poco desacertado, correcto. Sin embargo, piense en cordova no solo para desarrollar en Android, sino también en ios, windows phone, blackberry, ... Para acceder a todas estas plataformas, debe cambiar a múltiples ide de todos modos. Por lo tanto, es mucho más fácil tener el código de nivel superior en un proyecto independiente.
Algunos sidenodes:
Después de hacer este proceso varias veces, perderá no más de 2 o 3 segundos para
cordova prepare
e intercambiar proyectos. Lo cual está bien, creo.Yo mismo no uso proyectos diferentes de eclipse, incluso uso diferentes instalaciones de eclipse. Esto pareció estar mejor arreglado para mí, ya que me protege de archivos confusos de nivel superior y bajo.
Incluso si desarrolla solo para Android, debe usar dos proyectos diferentes, ya que ''cordova prepare'' (o cualquier comando cli que contenga prepare, como compilar, emular y ejecutar) sobrescribirá / eliminará sus archivos.
En mi instalación, construir con CLI toma la misma cantidad de tiempo que en eclipse. Lo cual tiene sentido, ya que estoy usando el mismo SDK para ambos. Sin embargo, en el proceso escrito anteriormente, no hay necesidad de usar el comando cli-build.
Si usa solo la plataforma de Android y no se confunde fácilmente con los archivos del mismo nombre en un proyecto, puede vincular la carpeta myApp / www en su proyecto de Android. En este caso, solo tendrá un proyecto (El crédito por esta respuesta es para el propio stevemarvell, solo estoy agregando esto aquí para completarlo)
Vea mi respuesta aquí: Múltiples archivos HTML en el proyecto PhoneGap Android
Por qué me mudé a Netbeans con Phonegap 3.0 CLI. Adecuado mi flujo de trabajo mejor.