Java en aplicaciones para móviles

Acabábamos el post anterior comentando que el uso de J2Me podía hacer que la programación para ciertas plataformas se realizara de manera común.  ¿Común? bueno, si, pero no tanto, ya que no todos estos dispositivos tiene el mismo soporte de J2ME. ¿la razón? Tal vez lo primero sea definir que es exactamente J2ME.

J2ME, o ahora mismo llamada Java ME,  es una de los componentes de la llamada plataforma Java  junto con Java EE y Java SE. Su objetivo es proporcionar una serie de API’s para el desarrollo de aplicaciones en dispositivos con recursos limitados como PDA’s, coches, móviles, electrodomésticos… Es decir, el campo de dispositivos que abarca J2ME es muy grande y con unas características de hardware muy variadas.

Es por ello que Java ME se divide en las llamadas configuraciones. Existen dos: la CDC (pensada principalmente para domótica o automóviles) y la CLDC (Connected Limited Device Configuration), que es la que está en la mayoría de los móviles. Cada una de ellas proporciona unas API especiales para cada tipo de hardware.

Pero hay más. En cada configuración existen los llamados “profiles” (perfiles). Estos nos definen características concretas, por ejemplo la interfaz de usuario. Para CLDC hay tres perfiles: DoJa, pensado para móviles japoneses, IMP (para móviles sin interfaz de usuario) y MIDP (Mobile Information Device Profile) que es una versión del anterior pero con interfaz de usuario.

Es decir, que dentro de Java ME trabajaremos con la configuración CLDC  y el perfil MIDP.

Pero claro, no todo podía ser tan bonito 🙂 . A partir de aquí empiezan las particularizaciones. Cada dispositivo móvil puede incluir soporte para distintas APIs opcionales. Por ejemplo, en función del modelo sobre el que queramos programar podemos necesitar una API para el manejo de la geolocalización, de la cámara, del bluetooth,…  o de una interfaz gráfica personalizada.

¿Que ocurre al final? Pues que cada fabricante realiza sus propias implementaciones de J2ME, basándose siempre en la original de Oracle, pero pensadas en particular para sus dispositivos. De esta manera hay funcionalidades que pueden existir en una versión y en otra no, o que aún existiendo, tengan comportamientos distintos.

A día de hoy la última versión del CLDC es la 1.1 y del MIDP la 2.0.

 

Tags: , , ,

Compartir en Facebook Compartir en Twitter

Dejar un comentario

XHTML: Puedes usar estos tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>