Desarrollo multiplataforma movil

FrioneL

Buenas.

Quiero desarrollar una app para dispositivos moviles y me gustaria que fuese multiplataforma (desarrollo 1 vez, exporto a varios sistemas operativos moviles).

He visto que hay varios frameworks para el efecto: appcelerator, phonegap, coronas, livecode...

Queria saber si alguien ha trabajado con alguno de estos o consejos sobre cual es el que mas mola, facil, gratuito, etc.

Saludos

smintcs

Justo estoy interesándome por este tema últimamente, pero me cuesta crearme una opinión fiable.

Por un lado en principio es todo maravilloso con phonegap o titanium appcelerator, pero luego resulta que hay que hacer algunos edits para según cosas en según que sistemas, es decir programas una sola vez todo pero ciertos detallitos hay que matizarlos según el sistema.

En principio parece mas comodo aprender html5 + js + css3, que cada dia gana mas y mas terreno y te sirve para mas cosas.

Por otro lado, veo opiniones que dicen que no esta lo optimizado que debería y algunas aplicaciones hechas así con phonegap dan problemas en iOS porque no van lo finísimas que deberían o algo así (de iOS no tengo la mas mínima idea, puedo estar colándome mucho) pero era algo así como que el market no aceptaba algunas de las apps echas de esta manera.

Por otro lado phonegap a pelo es un poco lioso al principio, tienes que ponerte el sdk de cada sistema para el que quieras sacar la aplicación. Ahora hay el phonegap build o algo así, que va en la nube y le mandas el proyecto en phonegap sencillo y el mismo se encarga de empaquetar para cada sistema.

A ver si alguien nos arroja un poco de luz, el debate app nativas vs estos frameworks esta ahi.

Renardo

Phonegap es muy sencillo, no es mas jquery + acceso a algunos recursos del movil

1 respuesta
willsmith

Como dice #3 phonegap es lo mejor pero hay un pero. Para desarrollar para IOS necesitas un mac y para winphone un Windows

bLero

yo en estos casos SIEMPRE me decantaría por una aplicación web con HTML5 a excepción de:

  • Juegos (por temas de rendimiento y librerías necesarias)
  • Aplicaciones que necesiten sensores específicos o cámara (aunque con html5 ya podemos acceder a accelerómetro, gps, etc)

Si es necesario publicarlas en el play store y derivados, se incluyen en un webview fullscreen y listo.

zoeshadow

Yo he estado manteniendo un lector de ePub en HTML5 con un wrapper nativo (custom) Java para Android y Obj-c para iOS, y la verdad es que el rendimiento ha sido un quebradero de cabeza, hay que tener cuidado para que tipo de aplicaciones se decide usar HTML5 ya que el rendimiento es bastante peor que una aplicación nativa, sobre todo en dispositivos con una versión de Android anterior al a 4.2 ( donde se empezaron a poner las pilas con el WebView ).

Te recomiendo usar PhoneGap/Cordova3 ( Es prácticamente lo mismo, PhoneGap es una implementación de Adobe del proyecto open source Cordova ), la versión 3 y sus herramientas de consola te ayudan a abstraerte casi por completo de las plataformas donde corre, y te permite probar sin conocer casi como funciona Android/iOS ( aunque a la larga aprenderás cosas ).

PhoneGap es gratuito, tiene un servicio a parte que por 10e al mes te permite mandar tu código a sus servidores y te devuelven una .ipa y .apk firmadas, listas para ser lanzadas al market ( esto, en iOS es un quebradero de cabeza, y si no tienes un MAC poca alternativa tienes )

FrioneL

Estoy viendo que el LiveCode esta bastante guay, mas que nada porque al compilar, transforma todo a codigo nativo, asi que el problema de rendimiento desaparece y sigues teniendo que desarrollando una vez, puedes exportar a distintas plataformas. Ademas parece que tiene bastantes plugins y demas.

Contras: no encuentro demasiados tutoriales ya que te los venden en la web (pack de 60 video tutoriales por 50$), asi que quizas el aprendizaje sea algo jodido. Tambien, que utiliza un lenguaje unico que habria que aprender y que solo te va a servir para utilizarlo en este framework...

yarviT0

por experiencia propia phonegap. Si sabes HTML5 o dominas javascript puedes hacer cosas faciles y rápidas.

Tienes mucha domcumentacióny tutoriales online y librerias interesantes; eso sit e recomiendo que te veas antes como hacer ciertas cosas (transiciones, llamadas a servicios, maquetación) bien antes de ponerte a hacer la app.

FrioneL

En principio por temas de rendimiento preferiria un framework que construyese aplicaciones nativas... por lo que todos aquellos basados en lenguaje web me gustaria descartarlos.

1 respuesta
zoeshadow

Desde mi experiencia, buena suerte con esos frameworks xDDD

Si ya es difícil hacer código "multiplataforma" con HTML5 y PhoneGap/parecidos, no me quiero imaginar con algo así...

pdj

#9 Esto es lo que buscas http://xamarin.com/tour aunque desde mi experiencia... han de pulir muuuchas cosas aún, por ahí tienes las limitaciones de cada plataforma en la documentación.

1 respuesta
FrioneL

#11 El problema que estoy viendole a ese framework es que ahi solo hace generico lo que viene a ser la logica. El tema interfaz grafica se tiene que separar para cada sistema operativo.

EDIT: Me lo he bajado para nada. Al parecer si no tienes la licencia Business (999$) no te deja programar para Android y IOS utilizando el Visual Studio... asi que necesitas tener un MAC para hacer la version de IOS. Asi que nada... descartado xd.

1 respuesta
pdj

#12 Sí, tema de interfaz gráfica va por separado, no creo que encuentres nada que no sea HTML que te genere los xib para ios y los layout para android. Lo más próximo que vas a encontrar creo que va a ser eso... y si encima lo quieres gratis pues complicado pero si encuentras algo porfavor dilo por aqui, yo tambien estoy interesado para hacer trabajillos desde casa!

#14 con eso, casi me apuesto la mano a que necesitas un mac tambien, luego le echare un vistazo porque tambien estoy interesado en buscas alternativas para multiplataforma. gracias!

1 respuesta
FrioneL

#13 En principio LiveCode te deja compartir la interfaz grafica tambien. Lo que vi es que genera una interfaz muy basica y fea, pero hay plugins para que al final sea como nativa para cada sistema operativo.

Ademas, aunque no es gratuito, si que es mucho mas barato que el Xamarin ese.

VeL3FoR

Utiliza Unity3d es un motor muy potente si no sabes Android o Ios nativo y ahora la licencia es gratuita.

FrioneL

Quiero hacer una aplicacion, no un juego.

Seguramente use phonegap que es el que mas se recomienda...

1 respuesta
liebgott

Cordova.
Si te vienes arriba prueba con SteroidsJS, pero de entrada montate un combo cordova + algun fw sencillo tipo jQuery Mobile. Tmb intentaria darle una oportunidad a Lungo (e incluso usarlo con Monocle). Si ves que controlas mirate angularjs o incluso backbone o ember con Foundation 5 para el HTML/CSS.

FrioneL

Voy a usar phonegap con jquery mobile.

Que IDE recomendais? Tiene alguno plugins y demas interesantes?

liebgott

Webstorm o Sublime Text petado de plugins

RaymaN

http://thenextweb.com/google/2014/01/28/google-brings-chrome-apps-android-ios-lets-developers-submit-google-play-apples-app-store/#!tGhS3

VeL3FoR

#16 Unity no es simplemente para juegos, tambien sirve para aplicaciones y webs, como ya he dicho es un motor muy potente.