Showing posts with label SDK. Show all posts
Showing posts with label SDK. Show all posts

Wednesday, November 5, 2008

CREACION Y ADMINISTRACION DE PROYECTOS


PONIENDO A TRABAJAR EL WIRELESS TOOLKIT



Todo proyecto comienza con un paso, y éste sería darle un click al ícono del Wireless Toolkit que se mira en la imagen.


Cuando se crea un proyecto, el Wireless Toolkit se encarga de crear un árbol de directorios en los que podremos almacenar nuestro código, los recursos que necesitemos en la aplicación y los archivos de instalación, entre otros.



Ya sea con la opción File-> New Project, o con el icono de New Project que aparece en pantalla; se puede crear un proyecto.







Para la creación del nuevo proyecto, deberemos proporcionar dos cosas:

  1. Nombre del Proyecto

  2. Nombre de la clase MIDlet

Por ejemplo, podemos dar como nombre del proyecto: Mi Primera Aplicación para J2ME, y como nombre de la clase MIDlet: MiPrimerMidlet.java y presionemos el botón Create Project.

Para ser nuestra primera práctica y antes de que entremos de lleno a conocer los perfiles (MIDP) y las configuraciones (CLDC), seleccionemos la siguiente opción que se muestra en la pantalla y presionemos después el botón OK.

Como mencionaba anteriormente, al momento de seleccionar un nuevo proyecto, el Wireless Toolkit crea una estructura de directorios en los que almacenaremos todo lo necesario para desarrollar la aplicación.


Y en ésta imagen lo podemos apreciar, Wireless Toolkit ha creado para nuesta aplicación la estructura de directorios en D:\Documents and Settings\wz2qch\j2mewtk\2.5.2\apps\Mi Primera Aplicacion para J2ME.

Mencionemos los distintos subdirectorios que nos ha creado:

bin .- En este directorio tendremos los archivos de instalación de la aplicación; que serían un archivo *.jar, otro *.jad y uno llamado MANIFEST.MF
lib .- Si además de las class y librerías que nos proporciona J2ME, utilizamos alguna otra; es en este lugar donde podemos almacenarlas para ser llamadas por nuestra aplicación.

res .- Es el lugar en donde podemos almacernar nuestros recursos; que pueden archivos de imágenes, documentos, etc; necesarios para nuestra aplicación.
src .- Y por último pero no por eso menos importante, es este directorio en donde almacenaremos nuestro código fuente, nuestros archivos *.java que darán funcionalidad a lo que desarrollemos.

Cuando yá se empieza a trabajar y se compilan los proyectos; se crean otros directorios adicionales como el classes, el tmpclasses y el tmplib.

Pongamos en el directorio src el código que creamos anteriormente y que llamamos MiPrimerMidlet.java.

Para compilarlo, bastará con presionar el botón BUILD en el menú principal de Wireless Toolkit y si no hay errores de compilación, podremos ejecutarlo en el emulador presionando el botón RUN.
Como se observa en la imagen, se desplegará nuestra aplicación gracias al emulador por default. Es posible cambiar este emulador por otro, para tener una representación mas fidedigna de cómo se vería en un modelo distinto de móvil.
Esto se hace seleccionando el emulador que deseemos, en la caja de combo DEVICE, y podemos seleccionar entre:
  1. DefaultPhoneColor
  2. DefaultGrayPhone
  3. MediaControlSkin
  4. QwertyDevice

Tuesday, November 4, 2008

Y LLEGAMOS AL J2ME

La edición Java 2 Micro Edition fue presentada en 1999 por Sun Microsystems con el propósito de habilitar aplicaciones Java para pequeños dispositivos.
En esta presentación, se mostró una primera versión de una nueva Java Virtual Machine (JVM) para dispositivos Palm.

Como se muestra en el gráfico, J2ME es la versión del lenguaje Java que está orientada al desarrollo de aplicaciones para dispositivos pequeños con capacidades restringidas tanto en pantalla gráfica, como de procesamiento y memoria (teléfonos móviles, PDA`s, Handhelds, Pagers, etc).

Es la respuesta de Java a las necesidades de los usuarios de telefonía móvil que cada vez demandan más servicios y prestaciones por parte tanto de los terminales como de las compañías.

La tecnología del J2ME depende del asentamiento en el mercado de otras, como GPRS, íntimamente asociada a J2ME y que no ha estado a nuestro alcance hasta hace poco.

J2ME es la tecnología del futuro para la industria de los dispositivos móviles. Actualmente las compañías telefónicas y los fabricantes de móviles están implantando los protocolos y dispositivos necesarios para soportarla.





RELACION DE APIS en JAVA

Como se observa en el gráfico, en la actualidad J2SE es un subconjunto de J2EE, y el J2ME está contenido dentro de éstas dos, pero sin embargo debido a la limitaciones de los dispositivos a los que está dirigido, conserva una parte independiente llamada javax.microedition, que son clases e interfaces genéricas para la configuración CLDC.


COMPONENTES DEL J2ME

a) Máquina virtual.
La Máquina Virtual de la configuración CLDC se denomina KVM.

Características principales:
• Pequeña, con una carga de memoria entre los 40Kb y los 80 Kb, dependiendo de la plataforma y las opciones de compilación.
• Alta portabilidad.
• Modulable.
• Lo más completa y rápida posible y sin sacrificar características para las que
fue diseñada.

b) Configuración.

Configuración de dispositivos limitados con conexión, CLDC (Connected Limited Device Configuration).
La CLDC está orientada a dispositivos dotados de conexión y con limitaciones
en cuanto a capacidad gráfica, cómputo y memoria. Un ejemplo de éstos dispositivos
son: teléfonos móviles, buscapersonas (pagers), PDAs, organizadores personales, etc.

CLDC está orientado a dispositivos con ciertas restricciones. Algunas de éstas restricciones vienen dadas por el uso de la KVM, necesaria al trabajar con la CLDC debido a su pequeño tamaño.


Los dispositivos que usan CLDC deben cumplir los siguientes requisitos:
Disponer entre 160 Kb y 512 Kb de memoria total disponible. Como mínimo se debe disponer de 128 Kb de memoria no volátil para la Máquina Virtual Java y las bibliotecas CLDC, y 32 Kb de memoria volátil para la Máquina Virtual en tiempo de ejecución.
Procesador de 16 o 32 bits con al menos 25 Mhz de velocidad.
Ofrecer bajo consumo, debido a que éstos dispositivos trabajan con suministro de energía limitado, normalmente baterías.
Tener conexión a algún tipo de red, normalmente sin cable, con conexión intermitente y ancho de banda limitado (unos 9600 bps).

La CLDC aporta las siguientes funcionalidades a los dispositivos:

  • Un subconjunto del lenguaje Java y todas las restricciones de su Máquina Virtual (KVM).

  • Un subconjunto de las bibliotecas Java del núcleo.

  • Soporte para E/S básica.

  • Soporte para acceso a redes.

  • Seguridad.

CLASES EN J2ME

  • java.io Clases y paquetes estándar de E/S.

  • java.lang Clases e interfaces de la Máquina Virtual.

  • java.util Clases, interfaces y utilidades estándar.

  • javax.microedition Clases e interfaces de conexión genérica CLDC

c) Perfiles.

El perfil es el que define las APIs que controlan el ciclo de vida de la aplicación, interfaz de usuario, etc. Más concretamente, un perfil es un conjunto de APIs orientado a un ámbito de aplicación determinado. Los perfiles identifican un grupo de dispositivos por la funcionalidad que proporcionan (electrodomésticos, teléfonos móviles, etc.) y el tipo de aplicaciones que se ejecutarán en ellos. Las librerías de la interfaz gráfica son un componente muy importante en la definición de un perfil. Aquí nos podemos encontrar grandes diferencias entre interfaces, desde el menú textual de los teléfonos móviles hasta los táctiles de los PDAs.

El perfil establece unas APIs que definen las características de un dispositivo, mientras que la configuración hace lo propio con una familia de ellos.

Esto hace que a la hora de construir una aplicación se cuente tanto con las APIs del perfil como de la configuración. Tenemos que tener en cuenta que un perfil siempre se construye sobre una configuración determinada. De este modo, podemos pensar en un perfil como un conjunto de APIs que dotan a una configuración de funcionalidad específica.

Ya hemos visto los conceptos necesarios para entender cómo es un entorno de ejecución en Java Micro Edition.

Para empezar a desarrollar nuestras aplicaciones, es necesario contar con el Sun Java Wireless Toolkit 2.5.2 for CLDC (http://java.sun.com/javame/downloads/index.jsp) o bien, si queremos estar a la vanguardia, podemos descargar el Java Platform Micro Edition Software Development Kit 3.0 Early Access en esa misma liga.

Adicionalmente, yo instalo el Sony Ericsson SDK 2.5.0.3 for the Java™ ME Platform (https://developer.sonyericsson.com/site/global/docstools/java/p_java.jsp)

Con estas herramientas instaladas podemos conquistar el mundo !

Nota Importante: La secuencia correcta de instalación sería

  1. El JDK de J2SE
  2. El Sun Java Wireless Toolkit 2.5.2 for CLDC (o el Development Kit 3.0 Early Access)
  3. Sony Ericsson SDK 2.5.0.3 for the Java ME Platform

Monday, November 3, 2008

EMPECEMOS INSTALANDO JAVA

El lenguaje de programación Java en la actualidad


Desde 1995, Sun Microsystems ha controlado las especificaciones, el desarrollo y evolución del lenguaje a través del Java Community Process, si bien otros han desarrollado también implementaciones alternativas de estas tecnologías de Sun, algunas incluso bajo licencias de software libre.
Entre noviembre de 2006 y mayo de 2007, Sun Microsystems liberó la mayor parte de sus tecnologías Java bajo la licencia GNU GPL, de acuerdo con las especificaciones del Java Community Process, de tal forma que prácticamente todo el Java de Sun es ahora software libre (aunque la biblioteca de clases de Sun que se requiere para ejecutar los programas Java todavía no es software libre).
Bien, ahora que yá estamos mas enfocados en la historia de la herramienta que nos ocupa; averiguemos qué necesitamos y cómo lo conseguimos.
Instalación del SDK de Java (SDK = Software Development Kit)

En la página de Sun podemos encontrar varios tipos de descarga:
  1. JRE .- Si sólo queremos ejecutar aplicaciones Java, necesitaremos instalar JRE (Java Runtime Enviroment). Este es un entorno de ejecución que sirve para poder ejecutar programas java compilados.
  2. JDK .- Por el contrario, si lo que queremos es crear, compilar y ejecutar nuestras aplicaciones, necesitaremos el SDK (Sun Development Kit). SDK es el entorno de desarrollo que incluye varias herramientas además del compilador de java y el debugger.
  3. También podemos descargarnos el SDK+NetBeans si queremos un entorno visual para desarrollar nuestras aplicaciones. Netbeans es especialmente útil para diseñar interfaces gráficas para usuarios.

Puedes descargar estas aplicaciones en la página de Sun.(http://developers.sun.com/downloads/)

Las descargas estan agrupadas por Java EE (Enterprise Edition: Desarrollo de aplicaciones web) , Java ME (Micro Edition: Desarrollo para dispositivos móviles y PDA's) y Java SE (Standard Edition: Nos iremos por ésta si queremos crear aplicaciones en nuestro equipo de escritorio y posteriormente pasarlas a nuestro equipo móvil).

Configurar Java

Una vez instalada la versión SDK (Java SE), deberemos configurar las variables de entorno para poder ejecutar aplicaciones JAVA desde cualquier ruta de tu sistema.

Windows 2000/XP:

  1. Pulsaremos el botón derecho del ratón sobre MI PC, y seleccionaremos propiedades.
  2. En la pestaña de Opciones Avanzadas, hay un botón que te permite configurar las "Variables de Entorno". Haz click en este botón y modifica la variable "Path" del sistema, de modo que también contenga la ruta del ejecutable Java.
  3. Por ejemplo: si has instalado Java en c:\Java y la variable del sistema tiene el valor C:\WINDOWS\SYSTEM32, le cambiaremos el valor para que se lea: C:\WINDOWS\SYSTEM32;C:\Java\bin .
  4. Ahora, desde la linea de comandos podrás compilar (Ej: javac Miprograma.java) y ejecutar (Ej: java Miprograma) tus aplicaciones Java desde cualquier carpeta del sistema.

Configurar la variable CLASSPATH

Además de configurar la variable de entorno PATH, también deberás decirle a Java dónde encontrar los archivos de clases compiladas al ejecutar tus aplicaciones. Para ello deberemos modificar la variable CLASSPATH para que almenos incluya el directorio actual (.)

Ej: Desde la linea de comandos escribiremos: SET CLASSPATH=%CLASSPATH%;.

Ésta variable también puede contener otros directorios que contengan clases compiladas.