SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
1



Publicado en el WMLClub en Agosto de 2000
Motorola Mobile ADK
Por Santiago Márquez Solís
MOTOROLA MOBILE ADK

Continuando con nuestra línea de las últimas semanas en la cual estamos analizando las
características de los entornos de desarrollo más populares del mercado, le toca el turno
al Motorola Mobile ADK, una herramienta de programación WML muy completa y que
sin lugar a dudas llegará a ser indispensable en vuestros desarrollos ya que por si misma
engloba muchas características y posibilidades interesantes que iremos, poco a poco,
desvelando en este artículo. Como ya viene siendo habitual en esta seria de artículos
vamos a intentar contaros las posibilidades que el programa nos ofrece para hacer
nuestros desarrollos, así y a modo de tutorial explicaremos el proceso de instalación, el
entorno de trabajo con el que contamos, las utilidades existentes en el programa, para
acabar con el desarrollo de una pequeña aplicación dentro de este nuevo entorno de
trabajo, finalmente y como siempre el trabajo más duro queda de vuestra parte ya que
sois vosotros los que tendreís que evaluar si esta herramienta es la más adecuada para el
trabajo que realizais, no obstante, espero con este artículo ayudaros a ver las
posibilidades que tenemos y tener un pequeño punto de referencia donde poder dirigiros
cuando lo necesiteis, empecemos nuestro tour con el Motorola Mobile ADK.

INSTALACION

El proceso de instalación del Motorola Mobile ADK comienza como en todos los casos
con la conexión al sitio web de Motorola y el alta dentro de la zona de desarrolladores,
para hacer esto no teneis más que hacer clic en el link siguiente:

               http://www.motorola.com

el cual os llevará al site de Motorola, una vez alli debeis acceder al área de
desarrolladores y daros de alta, cuando relleneis los datos que se os piden en el
formulario de inscripción, Motorola enviará a la dirección de mail que hayais indicado
vuestro id de usuario y vuestro login de modo que podreis logaros dentro del área de
descarga de software y una vez alli vereis que teneis varias opciones de descarga, en este
caso os recomiendo que os bajeis la versión del ADK 1.1 y los agentes correspondientes,
ya que aunque en el web teneis la versión 2.0 ésta no deja de ser una beta y podrían
aparecer bugs inexperados, no obstante, os la recomiendo para ir curioseando y ver lo
nuevo que tendremos en el ADK, en el cuadro 1 teneis algunas diferencias con respecto a
la versión comentada en el artículo. Debido al uso que hace de los agentes de Microsoft
este SDK sólo está disponible para plataforma Windows.

Una vez que tengaís en vuestra máquina todo el software necesario pasamos a la
instalación propiamente dicha, en este caso y antes de comenzar con este proceso os
recomiendo que verifiqueis que en vuestro equipo teneis una versión superior o igual a la
2


5.0.0.3185 de la Microsoft Java Virtual Machine que el ADK necesita para poder
funcionar correctamente, en caso de que no la tengais instalada o que la versión sea una
versión inferior podeis descargarla desde Microsoft en la siguiente dirección:

              http://www.microsoft.com/java/vm/dl_vm32.htm

Suponiendo que teneís en vuestro equipo instalada está versión de la máquina virtual Java
podemos iniciar la instalación del ADK, todo el proceso es muy sencillo y basta con
ejecutar el fichero MobileADK.exe que previamente hemos descargado. Este fichero es
el que tendremos en caso de haber optado por la descarga de agentes y ADK todo en un
único archivo (aproximadamente unos 20 megas), al ejecutar el MobileADK.exe
tendremos que hacer durante su ejecución la instalación de los agentes de Microsoft
siguientes:

              -    Lernout & Hauspie TruVoice Amer. Eng TTS Engine
              -    Merlin
              -    Microsoft Speech Control Panel
              -    Microsoft Command & Control Engine


               -   Soporte para VoxML 1.2 y VoiceXML 1.0
               -   Ayuda integrada de WML, WMLScript y VoxML
               -   La ventana de output está mejora para mostrar mensajes
                   de VoxWML
               -   Soporte para imagenes en formato wbmp
               -   Correción de algunos bugs existentes en la versión 1.1
               -   Implementación de timeouts para aplicaciones basadas en
                   VoxML y VoiceXML
               -   Implementación de los protocolos de voz prompt:// y
                   builtin://
               -   Mejoras en la interfaz del IDE

               Cuadro 1


Todos estos agentes forman parte de la Microsoft Speech SDK la cual es toda una suite
de programación para hacer uso de tecnología de voz, el kit original (ahora mismo acaba
de salir la beta de la versión 5.0) tiene multitud de ejemplos, ayudas, controles, y en
definitiva todo lo necesario para integrar la tecnología de voz con cualquier aplicación,
incluida las aplicaciones de telefonía (Microsoft tiene todo un site dedicado a este SDK
en la siguiente página Web http://www.microsoft.com/IIT que bajo el nombre genérico de
Intelligent Interface Technologies nos permite descargarnos todo el software y
documentación necesaria para poder trabajar, aunque cualquiera que se haya iniciado en
este mundo aunque sea brevemente sabrá que hacer aplicaciones de voz resulta en
muchos casos complicado aun teniendo todos los elementos básicos necesarios para ello).
En el caso de que hayamos seleccionado bajarnos el ADK por partes (por un lado el
programa y por otro los agentes) os recomiendo que realiceis en primer lugar la
instalación de estos últimos (fichero MobileADK_Agents.exe) y posteriormente la
instalación del entorno de desarrollo propiamente dicho (MobileADK_Only.exe), este
3


fichero se descomprime en varios ficheros exe (actcnc.exe, merlin.exe, Msagent.exe,
spchcpl.exe y tv_enua.exe) los cuales podeis instalar en el orden que querais.

Independientemente de si la instalación la haceis en un paso (fichero MobileADK.exe) o
en varios pasos (MobileADK_Only y MobileADK_Agents.exe) el hecho es que en el
proceso de instalación si queremos hacer uso posteriormente de las opciones para
desarrollar aplicaciones que hagan uso de la tecnología VoxML tendremos que
configurar correctamente las opciones de voz de nuestro microfono (recordad que es la
única forma de poder pasar al PC nuestra voz, por lo menos de momento) a estás
pantallas de configuración (ver las figuras siguientes) se llega cuando realizamos la
instalación de los agentes y en ella tenemos que configurar los siguientes aspectos:

              -   Tipo de salida de audio que tenemos es decir, altavoces (speakers) o
                  auriculares (headphones), adicionalmente podemos hacer una prueba
                  para ver si funciona correctamente y seleccionar el volumen (figura 1)




               Figura 1
4


-   Tipo de microfono, en este caso tenemos unas cuantas posibilidades, y
    podemos elegir entre microfonos de sobremesa, los que van fijados a
    los auriculares, o bien los más modernos que van incorporados en el
    monitor o incluso en el teclado de la máquina. Aparte en esta pantalla
    tenemos un botón (Buying a Microphone) en el que si presionamos
    nos dan una serie de recomendaciones para la compra de un
    microfono, resulta interesante su lectura aparte de curioso (figura 2).




Figura 2



- Una vez que se ha indicado el tipo de microfono del que disponemos, el
sistema trata de evaluar la calidad del mismo mediante el dictado de una
frase, para hacer este dictado se nos recomienda que el lugar donde nos
encontremos se encuentre lo más silencioso posible para evitar que se
produzcan interferencias que puedan mermar la calidad de la grabación de
la frase (Figura 3 y 4)




Figura 3
5




Finalmente cuando el proceso de instalación de los agentes de Microsoft termina tenemos
dentro del Panel de Control de Windows un nuevo elemento denominado Speech que nos
permite acceder a las propiedades de los dispositivos de entrada y salida de voz, en el
apartado de utilidades haremos más incapie en este aspecto. Finalizada la instalación de
los agentes se puede continuar con la instalación del ADK, en el programa de instalación
del ADK lo único que tenemos que indicar es la carpeta de destino en el disco duro y la
ubicación del acceso directo del programa dentro de Windows.

EL ENTORNO DE TRABAJO

Una vez que el programa se encuentra instalado en nuestro disco duro (en el cuadro 2
teneis una breve explicación de la estructura de directorios que se crean) el aspecto que
presenta cuando accedemos a él es el siguiente (figura 5):




               Figura 4
              Figura 5



Como podeis ver por en la figura el aspecto que tenemos en este entorno no es muy
diferente de los entornos que hemos visto en otros articulos como puede ser el de Nokia o
el de Ericsson, por un lado tenemos la ventana del IDE donde podemos escribir y depurar
nuestros programas y en el lado derecho tenemos el típico visualizador en el que poder
testear si todo lo que estamos haciendo es correcto, en este entorno recibe el nombre de
UIS o User Interface Simulator. Las características comunes que presenta el ADK de
Motorola con respecto a otros entornos son las siguientes:
6


              -   Un editor integrado que nos permite escribir programas en WML,
                  WMLScript y como novedad hacer documentos en VoxML del que ya
                  hablaremos luego.
              -   El compilador, poco hay que decir de él, nos permite compilar
                  nuestros ficheros WML y WMLScript
              -   El editor nos muestra las etiquetas que introducimos en diferentes
                  colores, por lo que resulta mucho más legible el código que
                  escribimos.
              -   También tenemos un analizador de sintaxis que verifica el código que
                  vamos introduciendo y nos indica donde hay errores de este tipo.


               La estructura de directorios del ADK es muy simple y se
               compone de tres carpetas que cuelgan del directorio
               Motorola/Mobile ADK a saber:
                        - Examples: en esta carpeta tenemos diferentes
               ejemplos escritos en WML, WMLScript y lo más
               interesante en VoxML. Cada lenguaje está separado en
               su propia carpeta.
                        - HLP: contiene los manuales de ayuda del
               simulador y del IDE
                        - Phone: tiene distintos bmp con diferentes tipos
               de moviles asi como los correspondientes ficheros .dev
               asociados que podemos cargar desde el UIS.

               Cuadro 2


Si nos centramos en las características particulares del entorno en cuestión tenemos que
dividirlo en dos partes:

              -   Caracteristicas del editor
              -   Caracteristicas del UIS

Caracteristicas del editor

El editor es el elemento fundamental para realizar nuestro trabajo y de las posibilidades
que incorpore dependerá en mayor o menor medida que la programación de nuestras
aplicaciones sea una tarea más o menos cómoda. El editor del ADK está divido en tres
partes fundamentales: por un lado tenemos el área destinada a la inserción de nuestro
código, por otro tenemos el área de salida de resultados (ventana de output) y finalmente
tenemos la ventana de proyectos, en este caso y al igual que sucedia con el kit de
Ericsson los distintos documentos que forman nuestra aplicación se agrupan dentro de
proyectos de manera que su manipulación resulta mucho más lógica (en el cuadro 3
teneis la estructura de un fichero .prj típico con una pequeña explicación del mismo).
7



                    El contenido de un fichero .prj es similar al siguiente:

                      Project Structure - Don't edit.   NO
                    book_buying.wml        .
                    calculateTotal.wmls      .

                    En estas líneas si os fijais se nos advierte de que no
                    modifiquemos el fichero y seguidamente tenemos los
                    distintos ficheros que están incluidos dentro del
                    proyecto, adicionalmente aparece información de
                    control (los cuadraditos) que sirven para que el editor
                    genere la ventana de proyecto

                    Cuadro 3


Veamos a continuación las distintas opciones que componen el editor:

El menu principal de la aplicación está compuesto por:

              -   File: Contiene todas las opciones necesarias para la manipulación de
                  ficheros, podemos crear ficheros nuevos, abrir y cerrar ficheros
                  previamente creados. También tenemos la posibilidad de imprimir el
                  contenido de los ficheros y mostrar en pantalla una previsualización de
                  los mismos (esto es nuevo con respecto a otros entornos que no
                  permiten esta posibilidad)
              -   Edit: Las típicas opciones de edición, como son cortar, pegar, copiar,
                  busqueda y reemplazo de texto y adicionalmente tenemos opciones
                  para modificar el tipo de letra (Set Font), para ir a una línea
                  determinada de la aplicación (Go To), la inclusión de bookmarks o
                  marcas distintivas en el código que nos ayudan en su escritura, en este
                  caso tenemos todo un submenu completo (Bookmarks) que nos
                  permite crear nuevas marcas, movernos entre marcas y borrarlas en la
                  figura teneis un ejemplo de bookmarks en el código (puntos de color
                  azúl).




                    Figura 6
8


              -    View: Permite mostrar u ocultar las distintas ventanas del ADK, como
                   son la ventana de output, proyecto, la barra de estado y la barra
                   estandar.
              -    Project: Con las opciones de crear un nuevo proyecto (New Project),
                   cerrarlo (Close Project), abrilo (Open Project) y añadir/borrar
                   documentos al mismo (Add Files y Remove File respectivamente).
              -    Tools: En esta opción tenemos las diferentes herramientas de la
                   aplicación como son el compilador, inicio y fin de la simulación de la
                   ejecución de un programa (Start Simulate y Stop Simulate
                   respectivamente). También podemos acceder a las Settings o
                   configuración donde están los diferentes ejecutables que realizan la
                   codificación, compilación y análisis del código (figura 7) , como
                   podeis ver en la figura podemos establecer que programas son los que
                   van a hacerse cargo del análisis sintáctico de los documentos VoxML,
                   el encoder para WML y el compilador para WMLScript.




                  Figura 7

              -    Window: Comprende las opciones típicas de manipulación de ventanas
                   como son la disposición en cascada, mosaico vertical y horizontal, asi
                   como opciones para cerrarlas todas (Close All) y para movernos entre
                   ellas (opciones Next y Previous)
              -    Help: La ayuda del entorno, y poco más podemos decir de esta
                   opción.

Caracteristicas del UIS

El User Interface Simulator se caracteriza por tener un menu de opciones bastante
completo que permite configurar el emulador para aceptar diferentes configuraciones en
función del tipo de aplicación que queramos visualizar, si examinamos este menú
contamos con las siguientes opciones:
9


-   File: Desde esta opción de menú podemos:
        - cambiar las distintas configuraciones del móvil mediante Open
           Configuration, desde aquí se nos abre un nuevo cuadro de
           dialogo donde podemos elegir el fichero .dev que queremos
           cargar, disponemos de configuraciones para los siguientes
           telefonos móviles: i500, i700, i1000, startac, T2267, v2282 y
           v8160.
        - hacer la recarga de la página (Reload) y ver el transcript , esta
           es una ventana donde va apareciendo información de debug de
           los documentos WML y VoxML por los cuales vamos
           navegando (en la figura 8 teneis un ejemplo de esta pantalla
           con el código de la página que se está visualizando), esta
           ventana por decirlo de alguna manera es el marco donde la
           opción Info del menu del UIS vuelva los resultados que va
           obteniendo.




             Figura 8


-   Info: Nos permite volcar dentro de la ventana de transcript
    información sobre las páginas por las cuales vamos navegando, como
    pueden ser el código fuente, o los mensajes que recibe y envia las
    aplicaciones VoxML.
-   Settings: Desde aqui podemos modificar el modo de funcionamiento
    del sistema UIS, de este modo tenemos los siguiente:
               - Posibilidad de elegir el modo de operación del móvil,
                  entre modo WML o VoxML.
               - Podemos tambien indicar (Mobile Link Settings) el tipo
                  de conexión que se va a establecer HTTP Direct o bien
                  a través de un Gateway, esta misma pantalla podemos
                  indicar la ruta de la página home para WML y VoxML.
               - También disponemos de una lista de bookmarks o
                  favoritos (Add address) donde incluir las direcciones
10


                                  que más nos gusten, en la figura 9 teneis la pantalla de
                                  esta opción.




                       Figura 9


              -   Help: La ayuda sobre el UIS.

UTILIDADES

Las utilidades que incorpora el ADK son básicamente orientadas a la conexión con las
herramientas de voz de Microsoft y no pueden considerarse elementos propios del ADK,
ya que podriamos tenerlas sin necesidad de tener el programa instalado en nuestra
máquina, según esto los elementos que vamos a ver en este apartado se van a centrar en
los diferentes agentes que se han instalado y en la tecnología VoxML.

Cuando finalizamos la instalación de los agentes de Microsoft tenemos un nuevo
elemento en el Control Panel de nuestra máquina, este nuevo elemento es el Speech (del
que ya comentamos algo antes) este programa nos permite configurar los elementos de
entrada y salida de voz de nuestro equipo, esto es el microfono y los auriculares (ver
figura 10), se puede decir que los parámetros de configuración que podemos modificar
son los relativos al tipo de voz que queremos oir (tenemos distintos tonos de hombre y




                         Figura 10
11


mujer en el idioma ingles), también podemos acceder al entrenamiento de la máquina
para que sea capaz de entender aquello que pronunciamos en el microfono y actuar en
consecuencia.

Además del Speech control tenemos otro elemento importante al cual accederemos desde
el UIS al seleccionar el modo VoxML, este elemento es Merlin (figura) o también
conocido como el Speech Agent, este programa representado por el mago que teneis en la
figura aparece siempre que un fichero VoxML es ejecutado y actúa hablando
(literalmente) el contenido de la página en la cual estamos conectados.




Pero lo realmente interesante de todo esto es la nueva tecnología que Motorola ha
desarrollado (VoxML está basado en XML y se puede decir que es una variante del
voiceXML (Voice eXtensible Markup Language) y sus especificaciones las dirige el
VoiceXML Forum creado por AT&T, IBM, Motorola y Lucent Technologies.), el
VoxML es un nuevo lenguaje que proporciona a los desarrolladores de aplicaciones
móviles una nueva herramienta para crear aplicaciones cuya elemento fundamental de
trabajo sea la voz, de modo que la navegación, la entrada de datos e incluso la salida se
basen en este elemento. La estructura del lenguaje está pensada para facilitar la creación
de este tipo de aplicaciones y aunque es muy similar a HTML lo más importante a la
hora de desarrollar aplicaciones de este tipo es establecer de una manera muy clara la
secuencia de interacción entre usuario y aplicación, cosa que con los tags disponibles en
VoxML se favorece enormemente.

Los dos elementos fundamentales de las aplicaciones VoxML son por un lado el
DIALOG y el STEP (actualmente no sé como traducirán estos elementos al castellano,
toda la gente que sabe algo de esto los llama dialog y step simplemente) los cuales
proporcionan la estructura básica para las aplicaciones VoxML. El tag DIALOG define el
alcance del documento VoxML y dentro de él se encuentran el resto de los elementos que
conforman el documento de manera que sólo existe un DIALOG por fichero (similar a
<HTML> y </HTML>).

El tag STEP define el estado de la aplicación dentro del DIALOG, es decir en conjunto
STEP Y DIALOG representan la interacción entre usuario y aplicación de modo que
cuando entramos dentro de un documento VoxML el browser navega entre los diferentes
STEP del DIALOG y muestra el resultado al usuario

Como veis todo lo visto en este apartado es un pequeño repaso sobre las enormes
posibilidades que toda la tecnologia VoxML lleva asociada consigo y que trataremos más
12


adelante en un futuro artículo al igual que el Speech SDK 4.0 de Microsoft que llevaría
varios artículos contaros todas sus posibilidades.


UN PEQUEÑO PROGRAMA EN WML

Hasta ahora hemos visto las posibilidades que tenemos dentro del ADK, y como ya es
habitual toca el turno ahora de la parte práctica del artículo, la creación, depuración y
ejecución de un programa en WML y para ello seguiremos haciendo uso de nuestro
querido „Hola Mundo‟. El código que compondrá el programa es de sobra conocido por
todos aquellos que esteis siguiendo estos artículos y es el siguiente:

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
    <card id="card1" title="Motorola Demo">
    <p>
    Hola mundo<br>
    </p>
    </card>
</wml>

El paso siguiente es ver como hacemos para crear nuestro primer proyecto, enlazar el
documento que contiene el código anterior y pasar a ejecutarlo, para ello seguiremos las
siguiente secuencia de pasos:

              -   El primer paso es crear un nuevo proyecto, para ello hacemos clic en la
                  opción Project del menu principal y en el cuadro que nos aparece en
                  pantalla introducimos el nombre del proyecto que queremos crear, por
                  ejemplo Proyecto1, y la ruta donde queremos crearlo, a partir de esta
                  ruta nos generará una nueva carpeta con el nombre del proyecto que
                  hemos introducido y dentro de ésta a su vez tendremos un fichero en
                  este caso Project1.prj con la información asociada al proyecto (cuadro
                  2).
              -   Una vez creado el proyecto lo que tenemos que hacer es crear los
                  documentos que estarán dentro del mismo, este caso solo vamos a
                  tener un único documento por lo que tenemos que hacer ir a File y
                  seleccionar New, seguidamente nos mostrara en pantalla un cuadro de
                  dialogo donde tenemos que elegir el tipo de fichero que queremos
                  crear (WML, WMLScript y VoxML), en nuestro caso particular
                  elegimos WML e introducimos el nombre SALUDO.WML, fijaros
                  que la ruta donde se almacenará este fichero es la misma donde hemos
                  creado el proyecto, como aspecto interesante tenemos que el nuevo
                  fichero que se nos crea posee un esqueleto de programa ya formado
                  que nos vendrá muy bien para empezar a trabajar. También es
                  importante destacar que el fichero no se asocia automáticamente al
                  proyecto activo actualmente (aunque curiosamente la ruta por defecto
13


                  en la que se almacena coincide con la del proyecto) por lo que es
                  necesario asociarlo de manera manual, para ello solo tenemos que
                  seleccionar en el menú Project la opción Add File(s) y indicar que
                  ficheros formaran parte del proyecto, por defecto se nos muestran los
                  ficheros de la ruta en la que el proyecto está almacenado pero podemos
                  elegir de otras.
              -   Lo siguiente que tenemos que hacer es insertar nuestro código y salvar
                  el fichero WML modificado, en este caso el código que tenemos que
                  insertar es mínimo y se reduce a la inclusión del código

                                    <p> Hola Mundo <br></p>

                  y al cambio del title del card por el de “Motorola Demo”.

Ya lo único que nos queda es proceder a la compilación del programa para verificar si
existen o no errores y pasar a la ejecución del mismo dentro del UIS. Para realizar la
compilación podemos seleccionar la opción de menu Tools y elegir Compile, en este caso
en la ventana de output obtendremos los mensajes de error oportunos en caso de que
existan problemas en nuestro código o bien un mensaje de que todo ha ido bien en caso
contrario, solo resta activar la simulación (en el ADK para ver el resultado de un
programa siempre es necesario activar esta opción y desactivarla cuando queremos volver
a hacer cambios en el código) y ver el resultado en el UIS (en la figura 11 tenemos la
apariencia final de todo el proceso).




            Figura 11
14


CONCLUSIONES

Sin lugar a dudas el Motorola ADK es un serio competitor para el resto de entornos de
desarrollo que hemos venido evaluando a lo largo de esta serie de artículos, lo más
interesante probablemente sea la integración con el lenguaje VoxML lo que abre un
nuevo mundo de posibilidades dentro del mundo de desarrollo de aplicaciones para
móvil, por lo demás el entorno de desarrollo, el emulador de telefono, las opciones de
personalización, etc hacen de este entorno ideal para nuestros programas, el mayor
inconveniente proviene de la falta de herramientas para la manipulación de gráficos, a mi
gusto se hecha en falta un editor de WBMP que este integrado con la herramienta y no
tener que usar ningun programa externo, también sería deseable un editor más inteligente
en el sentido del de Ericsson en el cual podiamos incluir las etiquetas de manera
automática mediante cuadros de dialogo que rellenamos, no obstante, la versión 2
definitiva estará pronto entre nosotros y seguro, pero poco más se le puede objetar al
Motorola ADK, ahora sois vosotros y termino casi como comence diciendo que el
trabajo duro comienza en este momento por vuestra parte, analizando todas las
posibilidades de la herramienta y haciendo de esta nuestro entorno habitual de trabajo.
Por mi parte nada más por ahora, hasta la próxima.

Santiago Márquez Solís

Contenu connexe

Tendances (19)

Windows linux iso
Windows linux isoWindows linux iso
Windows linux iso
 
Taller de BD - Unidad 1 SGBD instalación de sql server 2012
Taller de BD - Unidad 1 SGBD instalación de sql server 2012Taller de BD - Unidad 1 SGBD instalación de sql server 2012
Taller de BD - Unidad 1 SGBD instalación de sql server 2012
 
windows 7 carlos briceño
windows 7 carlos briceñowindows 7 carlos briceño
windows 7 carlos briceño
 
Windows 7
Windows 7Windows 7
Windows 7
 
Windows 7
Windows 7 Windows 7
Windows 7
 
20001231 Ericsson Gateway
20001231   Ericsson Gateway20001231   Ericsson Gateway
20001231 Ericsson Gateway
 
deber
deberdeber
deber
 
Tipos de windows
Tipos de windowsTipos de windows
Tipos de windows
 
Windows
WindowsWindows
Windows
 
Interfaz grafica de usuario
Interfaz grafica de usuario Interfaz grafica de usuario
Interfaz grafica de usuario
 
Análisis de alternativas para el desarrollo de aplicaciones gráficas 3D sobre...
Análisis de alternativas para el desarrollo de aplicaciones gráficas 3D sobre...Análisis de alternativas para el desarrollo de aplicaciones gráficas 3D sobre...
Análisis de alternativas para el desarrollo de aplicaciones gráficas 3D sobre...
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Análisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3D
Análisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3DAnálisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3D
Análisis de Alternativas para el Desarrollo de Aplicaciones Gráficas 3D
 
Hlo
HloHlo
Hlo
 
Explorando con windows mobile 6.1
Explorando con windows mobile 6.1Explorando con windows mobile 6.1
Explorando con windows mobile 6.1
 
Presentacion yuri
Presentacion yuriPresentacion yuri
Presentacion yuri
 
Windows 7
Windows 7Windows 7
Windows 7
 
Sistema Operativo Android; versiones, historia
Sistema Operativo Android; versiones, historiaSistema Operativo Android; versiones, historia
Sistema Operativo Android; versiones, historia
 
Android
AndroidAndroid
Android
 

Similaire à 20000828 Motorola Mobile ADK

Similaire à 20000828 Motorola Mobile ADK (20)

Tópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movilTópicos Avanzados de Programación - Unidad 5 Programacion movil
Tópicos Avanzados de Programación - Unidad 5 Programacion movil
 
20000801 Ericsson WAPIde
20000801   Ericsson WAPIde20000801   Ericsson WAPIde
20000801 Ericsson WAPIde
 
Android
AndroidAndroid
Android
 
Android
AndroidAndroid
Android
 
Topicos Avanzados de Programacion - Unidad 5 programacion movil
Topicos Avanzados de Programacion -  Unidad 5 programacion movilTopicos Avanzados de Programacion -  Unidad 5 programacion movil
Topicos Avanzados de Programacion - Unidad 5 programacion movil
 
Software
SoftwareSoftware
Software
 
Materitopicos.pdf
Materitopicos.pdfMateritopicos.pdf
Materitopicos.pdf
 
Ofimatica windows y mac os
Ofimatica windows y mac osOfimatica windows y mac os
Ofimatica windows y mac os
 
Wpf
WpfWpf
Wpf
 
Wp ff inal
Wp ff inalWp ff inal
Wp ff inal
 
Actividad N°1
Actividad N°1Actividad N°1
Actividad N°1
 
Trabajo de ntics ii
Trabajo de ntics iiTrabajo de ntics ii
Trabajo de ntics ii
 
Trabajo de NTICS II
Trabajo de NTICS IITrabajo de NTICS II
Trabajo de NTICS II
 
Tipos de sistemas operativos
Tipos de sistemas operativosTipos de sistemas operativos
Tipos de sistemas operativos
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 
Temario java web_j2_ee_02
Temario java web_j2_ee_02Temario java web_j2_ee_02
Temario java web_j2_ee_02
 
TEMA Nº 2: ENTORNO DE DESARROLLO
TEMA Nº 2: ENTORNO DE DESARROLLOTEMA Nº 2: ENTORNO DE DESARROLLO
TEMA Nº 2: ENTORNO DE DESARROLLO
 
Temario java web_j2_ee_02
Temario java web_j2_ee_02Temario java web_j2_ee_02
Temario java web_j2_ee_02
 
TEMA Nº 2: ENTORNO DE DESARROLLO
TEMA Nº 2: ENTORNO DE DESARROLLOTEMA Nº 2: ENTORNO DE DESARROLLO
TEMA Nº 2: ENTORNO DE DESARROLLO
 
TEMA Nº 2: ENTORNO DE DESARROLLO
TEMA Nº 2: ENTORNO DE DESARROLLOTEMA Nº 2: ENTORNO DE DESARROLLO
TEMA Nº 2: ENTORNO DE DESARROLLO
 

Plus de Santiago Márquez Solís

Plus de Santiago Márquez Solís (12)

Bitcoin. In Crypto we Trust
Bitcoin. In Crypto we TrustBitcoin. In Crypto we Trust
Bitcoin. In Crypto we Trust
 
Administración básica de ubuntu server parte 1
Administración básica de ubuntu server   parte 1Administración básica de ubuntu server   parte 1
Administración básica de ubuntu server parte 1
 
Administración básica de ubuntu server parte 3
Administración básica de ubuntu server   parte 3Administración básica de ubuntu server   parte 3
Administración básica de ubuntu server parte 3
 
Administración básica de ubuntu server parte 2
Administración básica de ubuntu server   parte 2Administración básica de ubuntu server   parte 2
Administración básica de ubuntu server parte 2
 
Tecnologia Moviles para Pymes
Tecnologia Moviles para PymesTecnologia Moviles para Pymes
Tecnologia Moviles para Pymes
 
Fundamentos del Desarrollo de Aplicaciones para Android
Fundamentos del Desarrollo de Aplicaciones para AndroidFundamentos del Desarrollo de Aplicaciones para Android
Fundamentos del Desarrollo de Aplicaciones para Android
 
Spring Security
Spring SecuritySpring Security
Spring Security
 
20010315 WAP Lite Gateway
20010315   WAP Lite Gateway20010315   WAP Lite Gateway
20010315 WAP Lite Gateway
 
20000725 UMTS y GPRS
20000725   UMTS y GPRS20000725   UMTS y GPRS
20000725 UMTS y GPRS
 
20001130 Fundamentos de las Redes GSM
20001130 Fundamentos de las Redes GSM20001130 Fundamentos de las Redes GSM
20001130 Fundamentos de las Redes GSM
 
20001020 Programación ASP y WML
20001020 Programación ASP y WML20001020 Programación ASP y WML
20001020 Programación ASP y WML
 
20001215 Programación de Servlets y WML
20001215   Programación de Servlets y WML20001215   Programación de Servlets y WML
20001215 Programación de Servlets y WML
 

Dernier

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 

Dernier (11)

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 

20000828 Motorola Mobile ADK

  • 1. 1 Publicado en el WMLClub en Agosto de 2000 Motorola Mobile ADK Por Santiago Márquez Solís MOTOROLA MOBILE ADK Continuando con nuestra línea de las últimas semanas en la cual estamos analizando las características de los entornos de desarrollo más populares del mercado, le toca el turno al Motorola Mobile ADK, una herramienta de programación WML muy completa y que sin lugar a dudas llegará a ser indispensable en vuestros desarrollos ya que por si misma engloba muchas características y posibilidades interesantes que iremos, poco a poco, desvelando en este artículo. Como ya viene siendo habitual en esta seria de artículos vamos a intentar contaros las posibilidades que el programa nos ofrece para hacer nuestros desarrollos, así y a modo de tutorial explicaremos el proceso de instalación, el entorno de trabajo con el que contamos, las utilidades existentes en el programa, para acabar con el desarrollo de una pequeña aplicación dentro de este nuevo entorno de trabajo, finalmente y como siempre el trabajo más duro queda de vuestra parte ya que sois vosotros los que tendreís que evaluar si esta herramienta es la más adecuada para el trabajo que realizais, no obstante, espero con este artículo ayudaros a ver las posibilidades que tenemos y tener un pequeño punto de referencia donde poder dirigiros cuando lo necesiteis, empecemos nuestro tour con el Motorola Mobile ADK. INSTALACION El proceso de instalación del Motorola Mobile ADK comienza como en todos los casos con la conexión al sitio web de Motorola y el alta dentro de la zona de desarrolladores, para hacer esto no teneis más que hacer clic en el link siguiente: http://www.motorola.com el cual os llevará al site de Motorola, una vez alli debeis acceder al área de desarrolladores y daros de alta, cuando relleneis los datos que se os piden en el formulario de inscripción, Motorola enviará a la dirección de mail que hayais indicado vuestro id de usuario y vuestro login de modo que podreis logaros dentro del área de descarga de software y una vez alli vereis que teneis varias opciones de descarga, en este caso os recomiendo que os bajeis la versión del ADK 1.1 y los agentes correspondientes, ya que aunque en el web teneis la versión 2.0 ésta no deja de ser una beta y podrían aparecer bugs inexperados, no obstante, os la recomiendo para ir curioseando y ver lo nuevo que tendremos en el ADK, en el cuadro 1 teneis algunas diferencias con respecto a la versión comentada en el artículo. Debido al uso que hace de los agentes de Microsoft este SDK sólo está disponible para plataforma Windows. Una vez que tengaís en vuestra máquina todo el software necesario pasamos a la instalación propiamente dicha, en este caso y antes de comenzar con este proceso os recomiendo que verifiqueis que en vuestro equipo teneis una versión superior o igual a la
  • 2. 2 5.0.0.3185 de la Microsoft Java Virtual Machine que el ADK necesita para poder funcionar correctamente, en caso de que no la tengais instalada o que la versión sea una versión inferior podeis descargarla desde Microsoft en la siguiente dirección: http://www.microsoft.com/java/vm/dl_vm32.htm Suponiendo que teneís en vuestro equipo instalada está versión de la máquina virtual Java podemos iniciar la instalación del ADK, todo el proceso es muy sencillo y basta con ejecutar el fichero MobileADK.exe que previamente hemos descargado. Este fichero es el que tendremos en caso de haber optado por la descarga de agentes y ADK todo en un único archivo (aproximadamente unos 20 megas), al ejecutar el MobileADK.exe tendremos que hacer durante su ejecución la instalación de los agentes de Microsoft siguientes: - Lernout & Hauspie TruVoice Amer. Eng TTS Engine - Merlin - Microsoft Speech Control Panel - Microsoft Command & Control Engine - Soporte para VoxML 1.2 y VoiceXML 1.0 - Ayuda integrada de WML, WMLScript y VoxML - La ventana de output está mejora para mostrar mensajes de VoxWML - Soporte para imagenes en formato wbmp - Correción de algunos bugs existentes en la versión 1.1 - Implementación de timeouts para aplicaciones basadas en VoxML y VoiceXML - Implementación de los protocolos de voz prompt:// y builtin:// - Mejoras en la interfaz del IDE Cuadro 1 Todos estos agentes forman parte de la Microsoft Speech SDK la cual es toda una suite de programación para hacer uso de tecnología de voz, el kit original (ahora mismo acaba de salir la beta de la versión 5.0) tiene multitud de ejemplos, ayudas, controles, y en definitiva todo lo necesario para integrar la tecnología de voz con cualquier aplicación, incluida las aplicaciones de telefonía (Microsoft tiene todo un site dedicado a este SDK en la siguiente página Web http://www.microsoft.com/IIT que bajo el nombre genérico de Intelligent Interface Technologies nos permite descargarnos todo el software y documentación necesaria para poder trabajar, aunque cualquiera que se haya iniciado en este mundo aunque sea brevemente sabrá que hacer aplicaciones de voz resulta en muchos casos complicado aun teniendo todos los elementos básicos necesarios para ello). En el caso de que hayamos seleccionado bajarnos el ADK por partes (por un lado el programa y por otro los agentes) os recomiendo que realiceis en primer lugar la instalación de estos últimos (fichero MobileADK_Agents.exe) y posteriormente la instalación del entorno de desarrollo propiamente dicho (MobileADK_Only.exe), este
  • 3. 3 fichero se descomprime en varios ficheros exe (actcnc.exe, merlin.exe, Msagent.exe, spchcpl.exe y tv_enua.exe) los cuales podeis instalar en el orden que querais. Independientemente de si la instalación la haceis en un paso (fichero MobileADK.exe) o en varios pasos (MobileADK_Only y MobileADK_Agents.exe) el hecho es que en el proceso de instalación si queremos hacer uso posteriormente de las opciones para desarrollar aplicaciones que hagan uso de la tecnología VoxML tendremos que configurar correctamente las opciones de voz de nuestro microfono (recordad que es la única forma de poder pasar al PC nuestra voz, por lo menos de momento) a estás pantallas de configuración (ver las figuras siguientes) se llega cuando realizamos la instalación de los agentes y en ella tenemos que configurar los siguientes aspectos: - Tipo de salida de audio que tenemos es decir, altavoces (speakers) o auriculares (headphones), adicionalmente podemos hacer una prueba para ver si funciona correctamente y seleccionar el volumen (figura 1) Figura 1
  • 4. 4 - Tipo de microfono, en este caso tenemos unas cuantas posibilidades, y podemos elegir entre microfonos de sobremesa, los que van fijados a los auriculares, o bien los más modernos que van incorporados en el monitor o incluso en el teclado de la máquina. Aparte en esta pantalla tenemos un botón (Buying a Microphone) en el que si presionamos nos dan una serie de recomendaciones para la compra de un microfono, resulta interesante su lectura aparte de curioso (figura 2). Figura 2 - Una vez que se ha indicado el tipo de microfono del que disponemos, el sistema trata de evaluar la calidad del mismo mediante el dictado de una frase, para hacer este dictado se nos recomienda que el lugar donde nos encontremos se encuentre lo más silencioso posible para evitar que se produzcan interferencias que puedan mermar la calidad de la grabación de la frase (Figura 3 y 4) Figura 3
  • 5. 5 Finalmente cuando el proceso de instalación de los agentes de Microsoft termina tenemos dentro del Panel de Control de Windows un nuevo elemento denominado Speech que nos permite acceder a las propiedades de los dispositivos de entrada y salida de voz, en el apartado de utilidades haremos más incapie en este aspecto. Finalizada la instalación de los agentes se puede continuar con la instalación del ADK, en el programa de instalación del ADK lo único que tenemos que indicar es la carpeta de destino en el disco duro y la ubicación del acceso directo del programa dentro de Windows. EL ENTORNO DE TRABAJO Una vez que el programa se encuentra instalado en nuestro disco duro (en el cuadro 2 teneis una breve explicación de la estructura de directorios que se crean) el aspecto que presenta cuando accedemos a él es el siguiente (figura 5): Figura 4 Figura 5 Como podeis ver por en la figura el aspecto que tenemos en este entorno no es muy diferente de los entornos que hemos visto en otros articulos como puede ser el de Nokia o el de Ericsson, por un lado tenemos la ventana del IDE donde podemos escribir y depurar nuestros programas y en el lado derecho tenemos el típico visualizador en el que poder testear si todo lo que estamos haciendo es correcto, en este entorno recibe el nombre de UIS o User Interface Simulator. Las características comunes que presenta el ADK de Motorola con respecto a otros entornos son las siguientes:
  • 6. 6 - Un editor integrado que nos permite escribir programas en WML, WMLScript y como novedad hacer documentos en VoxML del que ya hablaremos luego. - El compilador, poco hay que decir de él, nos permite compilar nuestros ficheros WML y WMLScript - El editor nos muestra las etiquetas que introducimos en diferentes colores, por lo que resulta mucho más legible el código que escribimos. - También tenemos un analizador de sintaxis que verifica el código que vamos introduciendo y nos indica donde hay errores de este tipo. La estructura de directorios del ADK es muy simple y se compone de tres carpetas que cuelgan del directorio Motorola/Mobile ADK a saber: - Examples: en esta carpeta tenemos diferentes ejemplos escritos en WML, WMLScript y lo más interesante en VoxML. Cada lenguaje está separado en su propia carpeta. - HLP: contiene los manuales de ayuda del simulador y del IDE - Phone: tiene distintos bmp con diferentes tipos de moviles asi como los correspondientes ficheros .dev asociados que podemos cargar desde el UIS. Cuadro 2 Si nos centramos en las características particulares del entorno en cuestión tenemos que dividirlo en dos partes: - Caracteristicas del editor - Caracteristicas del UIS Caracteristicas del editor El editor es el elemento fundamental para realizar nuestro trabajo y de las posibilidades que incorpore dependerá en mayor o menor medida que la programación de nuestras aplicaciones sea una tarea más o menos cómoda. El editor del ADK está divido en tres partes fundamentales: por un lado tenemos el área destinada a la inserción de nuestro código, por otro tenemos el área de salida de resultados (ventana de output) y finalmente tenemos la ventana de proyectos, en este caso y al igual que sucedia con el kit de Ericsson los distintos documentos que forman nuestra aplicación se agrupan dentro de proyectos de manera que su manipulación resulta mucho más lógica (en el cuadro 3 teneis la estructura de un fichero .prj típico con una pequeña explicación del mismo).
  • 7. 7 El contenido de un fichero .prj es similar al siguiente: Project Structure - Don't edit. NO book_buying.wml . calculateTotal.wmls . En estas líneas si os fijais se nos advierte de que no modifiquemos el fichero y seguidamente tenemos los distintos ficheros que están incluidos dentro del proyecto, adicionalmente aparece información de control (los cuadraditos) que sirven para que el editor genere la ventana de proyecto Cuadro 3 Veamos a continuación las distintas opciones que componen el editor: El menu principal de la aplicación está compuesto por: - File: Contiene todas las opciones necesarias para la manipulación de ficheros, podemos crear ficheros nuevos, abrir y cerrar ficheros previamente creados. También tenemos la posibilidad de imprimir el contenido de los ficheros y mostrar en pantalla una previsualización de los mismos (esto es nuevo con respecto a otros entornos que no permiten esta posibilidad) - Edit: Las típicas opciones de edición, como son cortar, pegar, copiar, busqueda y reemplazo de texto y adicionalmente tenemos opciones para modificar el tipo de letra (Set Font), para ir a una línea determinada de la aplicación (Go To), la inclusión de bookmarks o marcas distintivas en el código que nos ayudan en su escritura, en este caso tenemos todo un submenu completo (Bookmarks) que nos permite crear nuevas marcas, movernos entre marcas y borrarlas en la figura teneis un ejemplo de bookmarks en el código (puntos de color azúl). Figura 6
  • 8. 8 - View: Permite mostrar u ocultar las distintas ventanas del ADK, como son la ventana de output, proyecto, la barra de estado y la barra estandar. - Project: Con las opciones de crear un nuevo proyecto (New Project), cerrarlo (Close Project), abrilo (Open Project) y añadir/borrar documentos al mismo (Add Files y Remove File respectivamente). - Tools: En esta opción tenemos las diferentes herramientas de la aplicación como son el compilador, inicio y fin de la simulación de la ejecución de un programa (Start Simulate y Stop Simulate respectivamente). También podemos acceder a las Settings o configuración donde están los diferentes ejecutables que realizan la codificación, compilación y análisis del código (figura 7) , como podeis ver en la figura podemos establecer que programas son los que van a hacerse cargo del análisis sintáctico de los documentos VoxML, el encoder para WML y el compilador para WMLScript. Figura 7 - Window: Comprende las opciones típicas de manipulación de ventanas como son la disposición en cascada, mosaico vertical y horizontal, asi como opciones para cerrarlas todas (Close All) y para movernos entre ellas (opciones Next y Previous) - Help: La ayuda del entorno, y poco más podemos decir de esta opción. Caracteristicas del UIS El User Interface Simulator se caracteriza por tener un menu de opciones bastante completo que permite configurar el emulador para aceptar diferentes configuraciones en función del tipo de aplicación que queramos visualizar, si examinamos este menú contamos con las siguientes opciones:
  • 9. 9 - File: Desde esta opción de menú podemos: - cambiar las distintas configuraciones del móvil mediante Open Configuration, desde aquí se nos abre un nuevo cuadro de dialogo donde podemos elegir el fichero .dev que queremos cargar, disponemos de configuraciones para los siguientes telefonos móviles: i500, i700, i1000, startac, T2267, v2282 y v8160. - hacer la recarga de la página (Reload) y ver el transcript , esta es una ventana donde va apareciendo información de debug de los documentos WML y VoxML por los cuales vamos navegando (en la figura 8 teneis un ejemplo de esta pantalla con el código de la página que se está visualizando), esta ventana por decirlo de alguna manera es el marco donde la opción Info del menu del UIS vuelva los resultados que va obteniendo. Figura 8 - Info: Nos permite volcar dentro de la ventana de transcript información sobre las páginas por las cuales vamos navegando, como pueden ser el código fuente, o los mensajes que recibe y envia las aplicaciones VoxML. - Settings: Desde aqui podemos modificar el modo de funcionamiento del sistema UIS, de este modo tenemos los siguiente: - Posibilidad de elegir el modo de operación del móvil, entre modo WML o VoxML. - Podemos tambien indicar (Mobile Link Settings) el tipo de conexión que se va a establecer HTTP Direct o bien a través de un Gateway, esta misma pantalla podemos indicar la ruta de la página home para WML y VoxML. - También disponemos de una lista de bookmarks o favoritos (Add address) donde incluir las direcciones
  • 10. 10 que más nos gusten, en la figura 9 teneis la pantalla de esta opción. Figura 9 - Help: La ayuda sobre el UIS. UTILIDADES Las utilidades que incorpora el ADK son básicamente orientadas a la conexión con las herramientas de voz de Microsoft y no pueden considerarse elementos propios del ADK, ya que podriamos tenerlas sin necesidad de tener el programa instalado en nuestra máquina, según esto los elementos que vamos a ver en este apartado se van a centrar en los diferentes agentes que se han instalado y en la tecnología VoxML. Cuando finalizamos la instalación de los agentes de Microsoft tenemos un nuevo elemento en el Control Panel de nuestra máquina, este nuevo elemento es el Speech (del que ya comentamos algo antes) este programa nos permite configurar los elementos de entrada y salida de voz de nuestro equipo, esto es el microfono y los auriculares (ver figura 10), se puede decir que los parámetros de configuración que podemos modificar son los relativos al tipo de voz que queremos oir (tenemos distintos tonos de hombre y Figura 10
  • 11. 11 mujer en el idioma ingles), también podemos acceder al entrenamiento de la máquina para que sea capaz de entender aquello que pronunciamos en el microfono y actuar en consecuencia. Además del Speech control tenemos otro elemento importante al cual accederemos desde el UIS al seleccionar el modo VoxML, este elemento es Merlin (figura) o también conocido como el Speech Agent, este programa representado por el mago que teneis en la figura aparece siempre que un fichero VoxML es ejecutado y actúa hablando (literalmente) el contenido de la página en la cual estamos conectados. Pero lo realmente interesante de todo esto es la nueva tecnología que Motorola ha desarrollado (VoxML está basado en XML y se puede decir que es una variante del voiceXML (Voice eXtensible Markup Language) y sus especificaciones las dirige el VoiceXML Forum creado por AT&T, IBM, Motorola y Lucent Technologies.), el VoxML es un nuevo lenguaje que proporciona a los desarrolladores de aplicaciones móviles una nueva herramienta para crear aplicaciones cuya elemento fundamental de trabajo sea la voz, de modo que la navegación, la entrada de datos e incluso la salida se basen en este elemento. La estructura del lenguaje está pensada para facilitar la creación de este tipo de aplicaciones y aunque es muy similar a HTML lo más importante a la hora de desarrollar aplicaciones de este tipo es establecer de una manera muy clara la secuencia de interacción entre usuario y aplicación, cosa que con los tags disponibles en VoxML se favorece enormemente. Los dos elementos fundamentales de las aplicaciones VoxML son por un lado el DIALOG y el STEP (actualmente no sé como traducirán estos elementos al castellano, toda la gente que sabe algo de esto los llama dialog y step simplemente) los cuales proporcionan la estructura básica para las aplicaciones VoxML. El tag DIALOG define el alcance del documento VoxML y dentro de él se encuentran el resto de los elementos que conforman el documento de manera que sólo existe un DIALOG por fichero (similar a <HTML> y </HTML>). El tag STEP define el estado de la aplicación dentro del DIALOG, es decir en conjunto STEP Y DIALOG representan la interacción entre usuario y aplicación de modo que cuando entramos dentro de un documento VoxML el browser navega entre los diferentes STEP del DIALOG y muestra el resultado al usuario Como veis todo lo visto en este apartado es un pequeño repaso sobre las enormes posibilidades que toda la tecnologia VoxML lleva asociada consigo y que trataremos más
  • 12. 12 adelante en un futuro artículo al igual que el Speech SDK 4.0 de Microsoft que llevaría varios artículos contaros todas sus posibilidades. UN PEQUEÑO PROGRAMA EN WML Hasta ahora hemos visto las posibilidades que tenemos dentro del ADK, y como ya es habitual toca el turno ahora de la parte práctica del artículo, la creación, depuración y ejecución de un programa en WML y para ello seguiremos haciendo uso de nuestro querido „Hola Mundo‟. El código que compondrá el programa es de sobra conocido por todos aquellos que esteis siguiendo estos artículos y es el siguiente: <?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card id="card1" title="Motorola Demo"> <p> Hola mundo<br> </p> </card> </wml> El paso siguiente es ver como hacemos para crear nuestro primer proyecto, enlazar el documento que contiene el código anterior y pasar a ejecutarlo, para ello seguiremos las siguiente secuencia de pasos: - El primer paso es crear un nuevo proyecto, para ello hacemos clic en la opción Project del menu principal y en el cuadro que nos aparece en pantalla introducimos el nombre del proyecto que queremos crear, por ejemplo Proyecto1, y la ruta donde queremos crearlo, a partir de esta ruta nos generará una nueva carpeta con el nombre del proyecto que hemos introducido y dentro de ésta a su vez tendremos un fichero en este caso Project1.prj con la información asociada al proyecto (cuadro 2). - Una vez creado el proyecto lo que tenemos que hacer es crear los documentos que estarán dentro del mismo, este caso solo vamos a tener un único documento por lo que tenemos que hacer ir a File y seleccionar New, seguidamente nos mostrara en pantalla un cuadro de dialogo donde tenemos que elegir el tipo de fichero que queremos crear (WML, WMLScript y VoxML), en nuestro caso particular elegimos WML e introducimos el nombre SALUDO.WML, fijaros que la ruta donde se almacenará este fichero es la misma donde hemos creado el proyecto, como aspecto interesante tenemos que el nuevo fichero que se nos crea posee un esqueleto de programa ya formado que nos vendrá muy bien para empezar a trabajar. También es importante destacar que el fichero no se asocia automáticamente al proyecto activo actualmente (aunque curiosamente la ruta por defecto
  • 13. 13 en la que se almacena coincide con la del proyecto) por lo que es necesario asociarlo de manera manual, para ello solo tenemos que seleccionar en el menú Project la opción Add File(s) y indicar que ficheros formaran parte del proyecto, por defecto se nos muestran los ficheros de la ruta en la que el proyecto está almacenado pero podemos elegir de otras. - Lo siguiente que tenemos que hacer es insertar nuestro código y salvar el fichero WML modificado, en este caso el código que tenemos que insertar es mínimo y se reduce a la inclusión del código <p> Hola Mundo <br></p> y al cambio del title del card por el de “Motorola Demo”. Ya lo único que nos queda es proceder a la compilación del programa para verificar si existen o no errores y pasar a la ejecución del mismo dentro del UIS. Para realizar la compilación podemos seleccionar la opción de menu Tools y elegir Compile, en este caso en la ventana de output obtendremos los mensajes de error oportunos en caso de que existan problemas en nuestro código o bien un mensaje de que todo ha ido bien en caso contrario, solo resta activar la simulación (en el ADK para ver el resultado de un programa siempre es necesario activar esta opción y desactivarla cuando queremos volver a hacer cambios en el código) y ver el resultado en el UIS (en la figura 11 tenemos la apariencia final de todo el proceso). Figura 11
  • 14. 14 CONCLUSIONES Sin lugar a dudas el Motorola ADK es un serio competitor para el resto de entornos de desarrollo que hemos venido evaluando a lo largo de esta serie de artículos, lo más interesante probablemente sea la integración con el lenguaje VoxML lo que abre un nuevo mundo de posibilidades dentro del mundo de desarrollo de aplicaciones para móvil, por lo demás el entorno de desarrollo, el emulador de telefono, las opciones de personalización, etc hacen de este entorno ideal para nuestros programas, el mayor inconveniente proviene de la falta de herramientas para la manipulación de gráficos, a mi gusto se hecha en falta un editor de WBMP que este integrado con la herramienta y no tener que usar ningun programa externo, también sería deseable un editor más inteligente en el sentido del de Ericsson en el cual podiamos incluir las etiquetas de manera automática mediante cuadros de dialogo que rellenamos, no obstante, la versión 2 definitiva estará pronto entre nosotros y seguro, pero poco más se le puede objetar al Motorola ADK, ahora sois vosotros y termino casi como comence diciendo que el trabajo duro comienza en este momento por vuestra parte, analizando todas las posibilidades de la herramienta y haciendo de esta nuestro entorno habitual de trabajo. Por mi parte nada más por ahora, hasta la próxima. Santiago Márquez Solís