jueves, 29 de noviembre de 2012

Java en Android

Si tienes un terminal Android (teléfono, tablet...) seguramente habrás echado de menos que no ejecute java en alguna ocasión. Desde juegos hasta aplicaciones de turismo (si te gusta viajar habrás encontrado esos puntos que dicen: ¡Enciende el Bluetooth y descarga la guía de visita...!), pasando por el desarrollo de nuevas aplicaciones (como es nuestro caso), es interesante poder ejecutar archivos de java en nuestro terminal. La mala noticia es que Android no soporta una máquina virtual Java de forma nativa en estos momentos. La buena es que existen emuladores para todo: consolas de videojuegos, sistemas operativos como el propio Android y, como no, de la máquina virtual de Java.



El problema


Después de quemar unas cuantas neuronas aprendiendo a desarrollar aplicaciones java para dispositivos móviles nos encontramos con un problema a la hora de probarlas en real. Disponemos de un terminal iPad (iOS): no soporta java. Disponemos de otro terminal Android: no soporta java... vamos, que tenemos que recurrir a un móvil casi obsoleto para probar los .jar.

Pero, ¿por qué? Con lo fácil, flexible y potente que es trabajar con Java. La alternativa es programar en otro tipo de lenguajes (ActiveC, Adobe Flash...), pero eso será objeto de otros post. Aquí nos interesa ejecutar java en Android.


phoneME

Como casi siempre en informática, no somos los únicos que tenemos este mismo problema y hay gente mucho más especializada que aporta soluciones (bendita comunidad internauta).

La solución que nos ha solucionado un poquito la existencia ha sido phoneME (podéis visitar su web aquí). Se trata de una implementación de J2ME (Java2 Micro Edition para los profanos) para diferentes sistemas operativos entre los que se encuentra Android (si queréis más información sobre la versión de phoneME para Android podéis encontrarla aquí).


Instalación

En la sección de descargas de la página de phoneME podemos encontrar las versiones para los distintos sistemas operativos. A nosotros nos interesa el siguiente perfil:

phoneME Advanced - Foundation Profile + MIDP High Resolution b168 rev20547 (apk)

Se trata del perfil MIDP para ejecutar MIDlets en alta resolución (más de 240x320 pixels). Descargaremos un archivo APK que instalaremos en nuestro dispositivo Android.



Funcionamiento

Para ejecutar un archivo .jar tenemos dos opciones: 


  1. Si sólo tenemos el .jar debemos ejecutarlo desde phoneME (interfaz un poco engorrosa)
  2. Si disponemos del .jad y el .jar podemos utilizar un explorador de ficheros como el Astro y asignar la extensión .jad al phoneME (mucho más agradable de utilizar).
Vamos a centrarnos en la primera forma, por si acaso no tenéis el Astro todavía (mal, os recomiendo que lo probéis ;). El primer paso (y obvio) es pasar el .jar al terminal (por bluetooh, wifi, cable USB o como prefiráis). Una vez allí tomad nota de la ruta absoluta donde se ubica (en nuestro caso la carpeta de entradas de bluetooth: /mnt/sdcard/bluetooth) y el nombre del archivo. Esto es necesario porque phoneME no dispone de un módulo de exploración de ficheros: tendremos que darle la URL de nuestro archivo y pulsamos ejecutar:



Como podéis ver es un MIDlet sencillo desarrollado por nosotros, pero el programa es capaz de ejecutar MIDlets más complejos o incluso aplicaciones con la configuración CDC (instalando el apk correspondiente).

Espero que os resulte útil, si tenéis alguna pregunta no dudéis en escribir el comentario!

6 comentarios:

  1. Gracias socio, ya que hay que dedicar tiempo a encontrar soluciones mejor rentabilizarlas al máximo ahorrando tiempo al siguiente! Saludos

    ResponderEliminar
  2. Gracias por el post. Crees que po podría usar esta aplicación para live meeting? Al parecer live meeting no está soportado en Adroid, pero phoneME no parece funcionar para aplicaciones Java que se ejecutan en exploradores web.

    Un saludo

    ResponderEliminar
  3. Prueba a ver si funciona. Nosotros lo hemos probado sobre todo en proyectos de desarrollo propios en J2ME.

    Saludos

    ResponderEliminar
  4. Por cierto, cuéntanos la experiencia. Servirá de ayuda a todos!

    ResponderEliminar
  5. Como instalo el facebook...
    Me salen muchos comandos pero no puedo instalarlo me sale algo para escribir pero no se q es

    ResponderEliminar

Recomendaciones de Alcasoft