Historias
Slashboxes
Comentarios

Login Barrapunto

Login

[ Crear nueva cuenta ]

Iniciación a la programación de teléfonos móviles

editada por Yonderboy el 23 de Octubre 2007, 21:23h   Printer-friendly   Email story
desde el dept. pregunta-a-barrapunto
pobrecito hablador nos cuenta: «Estoy pensando en hacer algún juego y/o algún programilla para teléfonos móviles pero, conforme más leo, más me lío. Las opciones que creo que tengo son (por favor, corregidme si me equivoco):
1. Teléfonos corrientitos con java. El problema es que, a pesar de que Java se supone que es un estándar, cada marca (y casi cada modelo) funciona diferente y hay que adaptar el programa para cada modelo.
2. Teléfonos avanzados con Symbian. Estos permiten muchas más cosas, pero no sé qué tal va la portabilidad. Tampoco sé como están de difundidos. ¿Programación en Flash Lite o en J2ME?
3. Windows Mobile. En estos ando más perdido que con Symbian.
4. ¿Otros?
Mi idea es ir adentrándome en la programación, inicialmente juegos y aplicaciones sencillas y conforme aprenda intentar hacer cosas más complejas (quizás con Bluetooth, WiFi, etc.) ¿Es preferible que me decante directamente por los móviles avanzados con Symbian o similares o debería empezar con Java?»

Este hilo ha sido archivado. No pueden publicarse nuevos comentarios.
Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • Mmmm

    (Puntos:5, Informativo)
    por Noradrex (3519) el Martes, 23 Octubre de 2007, 21:49h (#974486)
    ( http://labotelladeklein.blogspot.com/ | Última bitácora: Domingo, 16 Marzo de 2008, 23:48h )
    Se te olvidan 2 posibilidades:
    • Desarrollo para Palm OS. Tienen un kit de desarrollo [palm.com] para desarrolladores y puedes usarlo con el nuevo y barato Treo 500v [pdatungsteno.com], o con cualquiera de los Treo o series T (como la TX).
    • Desarrollo WAP/WEB para usar con casi cualquier dispositivo que tenga un navegador (NintendoDS, PSP, Nokia, HTC, Sharp... ¡prácticamente todo!). Eso si, necesitarás conectividad de algún tipo (GPRS/3G/WIFI), pero la facilidad de desarrollo y la potencia que ofrece en determinados aspectos es realmente interesante.
    Por otro lado, no creo que debas despachar Windows Mobile tan rápido teniendo en cuenta que se encuentra en una enorme variedad de dispositivos, es sencillo de aprender gracias al Framework .NET Compact y el entorno de desarrollo (Visual Studio) y permite acceder a muchas funcionalidades del teléfono sin apenas esfuerzo (detección de red, lectura automática de SMS y acciones, etc...).

    Y el tema de desarrollo para Blackberry [blogspot.com] lo dejamos para otro día, que su "Java" y las firmas de código son historias para no dormir.

    --

    El doble de diversión en: La Botella de Klein [blogspot.com]

    • Re:Mmmm de boheme (Puntos:1) Miércoles, 24 Octubre de 2007, 07:40h
      • Re:Mmmm de Noradrex (Puntos:2) Miércoles, 24 Octubre de 2007, 07:55h
        • Re:Mmmm de sammael (Puntos:3) Miércoles, 24 Octubre de 2007, 08:47h
          • Re:Mmmm de pobrecito hablador (Puntos:1) Miércoles, 24 Octubre de 2007, 09:59h
          • Re:Mmmm de Noradrex (Puntos:2) Miércoles, 24 Octubre de 2007, 10:29h
    • Re: Treo 500v de Noradrex (Puntos:2) Miércoles, 24 Octubre de 2007, 13:50h
    • 1 respuesta por debajo de tu umbral de lectura actual.
  • Java

    (Puntos:1, Informativo)
    por pobrecito hablador el Martes, 23 Octubre de 2007, 21:54h (#974487)
    Si tu público va a ser europeo está claro que si quieres llegar a más gente tienes que usar j2me.
    Leete este articulo [pocketgamer.co.uk] que creo que te ayudara bastante en elegir lo que necesitas.
    • Felicidades de m0rtadelo (Puntos:1) Miércoles, 24 Octubre de 2007, 20:15h
  • .NET

    (Puntos:2)
    por Semen-up (23704) el Martes, 23 Octubre de 2007, 22:00h (#974490)
    ( http://barrapunto.com/ )
    Para Windows Mobile tienes .NET; con el GDI+ para Compact puedes hacer cositas bastante majas; lo malo es que para cosas mas potentes, como tirar de aceleración, ya tienes que tirar de cosas mas particulares (La HTC, por ejemplo, suele llevar un chip de ATI).

    En realidad es muy simple programar para Compact, y si gestionas bien las resoluciones, lo que funciona en una, funciona en todas; incluso con distintas versiones de Windows Mobile/CE
    • Re:.NET de Semen-up (Puntos:2) Miércoles, 24 Octubre de 2007, 07:37h
    • Re:.NET de Noradrex (Puntos:3) Miércoles, 24 Octubre de 2007, 08:28h
      • Re:.NET de Noradrex (Puntos:2) Miércoles, 24 Octubre de 2007, 10:19h
      • 1 respuesta por debajo de tu umbral de lectura actual.
    • 1 respuesta por debajo de tu umbral de lectura actual.
  • Sin duda Gtk !!!

    (Puntos:5, Divertido)
    por el culo (21186) el Martes, 23 Octubre de 2007, 22:07h (#974492)
    ( http://barrapunto.com/ )
    Yo lo haría, sin ninguna duda, en Gtk. Se trata de una librería en C que al estar programada en un lenguaje no orientado a objetos emula los objetos, hecho que la convierte en muy adecuada para la programación en dispositivos móviles (los objetos emulados son más estables que los objetos estáticos en condiciones dinámicas).

    Si quieres añadir una ligera cada de abstracción puedes usar Mono, que dada su solvencia de recursos y eficiencia seguro que aplicado en un móvil corre como una auténtica apisonadora.

    Por otra parte, nunca desestimes el poder de Perl+Tk, la gran revolusión, repiro, revolusión, un nuevo paradigma de programación orientada a sucesos.

    Algún infiel te recomendaría Qt (Qtopia es la "versión" para dispositivos móviles) pero NO lo hagas ya que hace 38 años su licencia no era del todo compatible con la GPL y merecen arder en el infierno durante 3 generaciones.

    En cuanto a Java, yo no lo usaría, está claro que es un lenguaje decadente dado el avance imparable de FreeCobol y Simio.Net.

    Recapitulando: yo usaría Ubuntu.
    --
    Me la sudan vuestros -1, a menudo unas horas de prueba y error y una morena con las tetas gordas.
  • Justo a tiempo

    (Puntos:1, Interesante)
    por pobrecito hablador el Miércoles, 24 Octubre de 2007, 00:20h (#974516)
    Parece [gizmodo.com] que Sun está abandonando J2ME en beneficio de J2SE.
  • iPhone

    (Puntos:2)
    por _26oo_ (13091) el Miércoles, 24 Octubre de 2007, 02:38h (#974524)
    Ahora la moda es hacer juegos para el iPhone, como este [ownit.nu] que utiliza el acelerómetro incorporado para simular el clásico juego del laberinto de madera con la bolita. Por contra, la portabilidad se limita al iPhone y el iPod Touch.
    • Re:iPhone de tupolev (Puntos:2) Miércoles, 24 Octubre de 2007, 09:52h
  • Mophun

    (Puntos:2)
    por sinman (586) <sinman@terra.es> el Miércoles, 24 Octubre de 2007, 06:49h (#974533)
    ( http://www.traperware.com/ )
    También está la plataforma Mophun [wikipedia.org] se programa en C y el SDK es opensource. Ahora hay pocos móviles que lo soporten puesto que usa hardware dedicado, mi Sony Ericsson T630 lo soportaba por eso lo conozco, y lo peor de todo es que te tienen que firmar el software para que funcione en un móvil y para ello tienes que pagar.

    P.D.: Simplemente quería comentar otra alternativa más aunque sea de las peores :p
  • por pobrecito hablador el Miércoles, 24 Octubre de 2007, 06:51h (#974534)
    Aquí hay un PFC sobre un juego en móvil: (el juego es pobre, pero la exploración de las tecnologías básicas es interesante)

    https://projectes.lafarga.cat/projects/btbattler/ [lafarga.cat]

    Y ahora empezamos otro centrado en conectividad:

    https://projectes.lafarga.cat/projects/mobileevent / [lafarga.cat]

    a lo mejor son de ayuda.

    jor;)i
  • sobre symbian

    (Puntos:3, Informativo)
    por pobrecito hablador el Miércoles, 24 Octubre de 2007, 07:35h (#974541)
    Symbian es el SO lider de mercado en smartphones (cerca del 60%, sobre todo gracias a la platforma s60 de nokia). Aunque si desarrollas en java podras acceder a muchos mas modelos y marcas y evitaras algunos de los problemas de portabilidad de S60 (sobre todo en la version 2.x).

    Si quieres saber mas sobre desarrolo en S60 y symbian te aconsejo que visites:
    http://www.forum.nokia.com/ [nokia.com]
    http://developer.symbian.com/main/index.jsp [symbian.com]
    http://newlc.com/ [newlc.com]
    http://my-symbian.com/main/index.php [my-symbian.com]
    http://s60.com/ [s60.com]

    Symbian utiliza un dialecto de C++ que no es facil de digerir para la mayoria (active objects, descriptors, cleanup stack, ...) pero la complejidad es mas mito que realidad :).
  • Tuve que sufrir un proyecto en Symbian, y es uno de los entornos con una curva de aprendizaje más dura. Además el entorno de desarrollo no ayuda demasiado.
    No se cuánto habrán cambiado las cosas desde hace dos años hasta aquí.
    Yo, por compatibilidad, comodidad, y herramientas al alcance, optaría por Java.
  • Repasando la bicatora de fernand0

    (Puntos:3, Informativo)
    por neu___ (14363) el Miércoles, 24 Octubre de 2007, 08:09h (#974552)
    ( http://neu.loignoro.com/index.html | Última bitácora: Lunes, 10 Marzo de 2008, 08:39h )
    Hace bien poco fernand0 publicó en su bitacora [barrapunto.com] una entrada sobre este tema, en concreto el 14 de octubre. De nada
    --

    Under a sea of dust lies a vast wealth of wisdom

  • Mis 2 centimos

    (Puntos:5, Informativo)
    por shalafi (5888) el Miércoles, 24 Octubre de 2007, 08:30h (#974555)
    ( http://www.shalafi.org/ | Última bitácora: Martes, 26 Febrero de 2008, 10:05h )
    Buenos dias:

    Escribo este comentario como desarrollador especializado en dispositivos moviles, mi trabajo esta centrado en VoIP, pero eso no implica que no haya tocado algo mas de graficos.

    J2ME: Los dialogos se recolocan segun el dispositivo, pero si usas GameCanvas puedes colocarlos tu como quieras. En efecto, tienes que escribir codigo especifico para cada resolucion de pantalla. Es java, es facil y funciona en todas partes: Smartphones, Palm y PocketPC (windows mobile)

    Symbian: Es bastante complicado empezar a desarrollar para symbian, como ya te han dicho en otros comentarios, tiene una serie de peculiaridades que lo hacen mas dificil, es acostumbrarse, como a todo. Solo te funcionara en los telefonos S60. Pero una vez mas, si queires "graficos bonitos" te tocara programar especificamente para cada resolucion. Existe un proyecto llamado openC que permite escribir programas en C estandar y compilarlos para symbian, aunque el interfaz lo tienes que hacer con sus clases de todos modos.

    Windows Mobile: Yo he hecho aplicaciones nativas en C++ y C#. REcomiendo C#; es bastante potente y muchisimo mas facil, con diferencia esta es la forma de hacer aplicaciones mas sencilla de todas, C# no es Java, pero no cuesta mucho acostumbrarse.

    Si quieres versatilidad yo apostaria por JAva, si quieres comodidad para desarrollar, apostaria por Windows Mobile y C# (Compact Framework) y si quieres potencia y llegar a un alto porcentaje de mercado, Symbian. Ahora es cuestion de establecer tus prioridades.

    --

    Un saludo, por ejemplo, Buenos dias:

    • Re:Mis 2 centimos

      (Puntos:4, Informativo)
      por sammael (16347) el Miércoles, 24 Octubre de 2007, 09:05h (#974566)
      ( http://barrapunto.com/ | Última bitácora: Jueves, 06 Marzo de 2008, 14:28h )
      un par de aniadidos sobre la parte java (que es la que me toca mas de cerca): si tu movil/pda/lo-que-sea no tiene maquina virtual ya instalada, mejor olvidate del tema desde el principio, te ahorraras mucho tiempo y comeduras de cabeza.

      no hay maquinas virtuales gratuitas. punto. (esta bien, hay un monton de *intentos* de maquina virtual, pero ninguna funciona ni medianamente bien)

      la mayoria de maquinas virtuales son propietarias y se venden a fabricantes (el precio se da en numero de dispositivos a instalar), la version mas barata y mas sencilla es la J9 de IBM, se dice que hay incluso una version de prueba, pero yo nunca llegue a encontrarla (generalmente hay un link a un tal "WebSphere Everyplace Micro Environment", una descarga de mas de 600 megas y unas instrucciones para instalarlo en el dispositivo que raramente funcionan)

      aun asi, tampoco es que funcione de la hostia (consegui probarla con una pda que me dejo un companiero)

      lo unico que he visto medio decente y que funciona con su propia maquina virtual es superwaba [superwaba.com.br], es parecido a java y usa mas o menos la misma sintaxis, solo que con sus propias librerias de sistema, es curioso, sencillo y se puede desarrollar desde eclipse, pero eso si, no intentes hacer nada demasiado complicado, la gestion de memoria que tiene es mas bien nefasta y en cuanto intentes hacer cualquier tonteria (como por ejemplo una lista desplegable con 20 opciones) se te comera una buena parte de la memoria disponible, si tu dispositivo no es demasiado potente, olvidate.

      Otra opcion es intentarlo con Mysafu [biglobe.ne.jp], un intento de maquina virtual de los que hablaba antes, usa las bibliotecas de classpath [gnu.org] y es, en general, un grano en el culo.
      --


      Dale fuego a un hombre y estara caliente un dia, prendele fuego y estara caliente el resto de su vida.
      [ Padre ]
  • jornadas y concurso Mobigame

    (Puntos:2, Informativo)
    por TC (351) <{reynaldo.cordero} {at} {uah.es}> el Miércoles, 24 Octubre de 2007, 11:05h (#974615)
    ( http://porlibre.org/ | Última bitácora: Miércoles, 21 Marzo de 2007, 13:01h )
    A partir del 2002 hay un concurso universitario anual (hacia abril) en la UAH llamado Mobigame [mobigame.uah.es]. Está pensado para J2ME y utiliza un libro "oficial" titulado Programación de videojuegos para teléfonos móviles en Java con J2ME [mobigame.uah.es].

    Hacia noviembre hay unas jornadas técnicas sobre programación de tecnologías móviles, por lo que pronto hay unas... eee... Espero.
  • Aclarando conceptos

    (Puntos:1)
    por chemanork (35132) el Jueves, 25 Octubre de 2007, 15:57h (#975165)
    Hola: Hice un PFC para una aplicación en dispositivos móviles. He visto que la gente se decanta por uno o por otro. No he visto nada incorrecto en lo que dicen. Ahora bien hay que aclarar lo siguiente: - Todo lo que no sea J2ME es una ínfima parte del mercado. Si lo que quieres es acceder a multitud de usuarios no hay alternativa. También hay que ver como evoluciona el mercado, porque por lo pronto ya están regalando con contrato teléfonos con Symbian en España, situación antes casi imposible. - Los demás sistemas ofrecen más que J2ME, ya depende de tu aplicación. Tienes que reflexionar sobre lo que quieres hacer. Por lo pronto el soporte de bluetooth con J2ME funciona muy bien, si quieres wifi tienes que ir a Symbian supongo. Saludos
  • Re:El que tengan

    (Puntos:2, Inspirado)
    por pobrecito hablador el Martes, 23 Octubre de 2007, 22:08h (#974493)
    Pues más sencillo aún: El que él tenga.
    [ Padre ]
  • Re:El que tengan

    (Puntos:2)
    por charlieman (23327) el Miércoles, 24 Octubre de 2007, 05:35h (#974530)
    Pues en ese caso yo diría que haga un juego para el teléfono con el que él cuenta. Poco le vale hacer juego para Java si su teléfono no lo trae...
    --
    A menudo unas pocas horas de "Prueba y error" podrán ahorrarte minutos de leer manuales.
    [ Padre ]
  • 10 respuestas por debajo de tu umbral de lectura actual.