3. Mi Primera Aplicación para Smart Devices
Introducción
En este taller vamos a ver las nuevas funcionalidades que nos ofrece y nos brinda el generador
Smart Devices de una manera sencilla y rápida de tal modo que se alcance el objetivo que es
desarrollar una aplicación funcional para los dispositivos inteligentes. Por otro lado veremos
que la generación y ejecución de este tipo de aplicaciones es muy sencilla con la nueva
propiedad de poder hacer el deploy de las aplicaciones directamente en la nube. El objetivo
del trabajo es desarrollar una aplicación donde que nos muestre los destinos turísticos en
México.
Objetivo
El objetivo de este laboratorio es que usted pueda desarrollar y probar una aplicación para
Smart Devices: Android; Blackberry; iOS; utilizando GeneXus X Evolution 2 Beta. Es necesario
contar con las bases de GeneXus. La aplicación a desarrollar es una aplicación desde cero ya
que se pretende mostrar las características básicas de GeneXus así como las nuevas
funcionalidades en la nueva beta: GeneXus Evolution 2.
Tourism
Usted es un turista en México. Se desea diseñar una aplicación para Smart Devices que
muestre información de las principales playas en México así como su ubicación dentro de los
diferentes estados de la República Mexicana, de este modo con la aplicación instalada en el
dispositivo usted no necesitará investigar o buscar planes turísticos pues la aplicaci ón le brinda
desde geo-localización de las playas hasta contacto de los hoteles en las playas que se
mostrarán en la aplicación.
Es necesario mostrar las playas por estados, y por cada playa mostrar un listado de hoteles en
los cuales se pueda hospedar el turista.
La aplicación, como veremos más adelante se divide en 2 esquemas: el primero es el
backoffice donde es una aplicación web como las comúnmente desarrolladas con GeneXus,
que es la parte donde se ingresará la información de las Playas hoteles y estados; la segunda
parte de este taller es la parte del Smart Device, en la cual se tiene gran funcionalidad de una
aplicación web más la movilidad y las características que nos ofrecen este tipo de dispositivos.
Pagina 2
4. Mi Primera Aplicación para Smart Devices
Parte 1. Creación del Modelo
1. Abrir GeneXus X Evolution 2 Beta 2 utilizando el acceso directo que está en el
escritorio.
2. Crear una nueva base de conocimiento de nombre Tourism con el Generador Ruby y
ambiente web.
Pagina 3
5. Mi Primera Aplicación para Smart Devices
Creación de Transacciones
Para el desarrollo de nuestra aplicación es necesario crear transacciones pus es en
ellas donde vamos a estar ingresando los datos de las playas y hoteles. Entonces vamos a crear
las transacciones como se lista a continuación:
Estado
EstadoId Numeric(4.0)
EstadoNombre Nombre=Char(20)
EstadoImagen Photo
Playa
EstadoId Numeric(4.0)
PlayaId Numeric(4.0)
PlayaNombre Nombre
PlayaLocalizacion Geolocalization
Hotel
EstadoId Numeric(4.0)
PlayaId Numeric(4.0)
HotelId Numeric(4.0)
HotelNombre Nombre
HotelDireccion Address
HotelTelefono Phone
HotelMail Email
HotelImagen Photo
PlayaImagen
PlayaImagenId Numeric(4.0)
PlayaId Numeric(4.0)
PlayaImagenFoto Photo
Cabe destacar que dentro de los dominios se encuentran algunos que son utilizados por los
Smart Devices por ejemplo Phone, Address, Photo, Geolocalization, etc.
Hasta el momento solo se han creado las transacciones como normalmente se realizan, para
poder trabajan con Smart Devices es necesario aplicar el pattern Work With for SmartDevices
Pagina 4
6. Mi Primera Aplicación para Smart Devices
Parte 2. Work With for SmartDevices
Ya que tengamos las transacciones creadas vamos a la parte de los patterns y en la pestaña de
Work With for Smart Devices, seleccionamos la opción de “Apply this pattern on save” en odas
las transacciones creadas y guardamos. Para que haga el cambio.
Esto hará que se agregue a nuestro desarrollo el generador Smartdevices.
Pagina 5
7. Mi Primera Aplicación para Smart Devices
Creación del Dashboard
Para desplegar los valores en pantalla del Dispositivo es necesario crear un Dashboard que es
donde se mostrarán nuestras transacciones. Al Dashboard le ponemos como nombre
‘Destinos’.
Una vez creado el Dashboard agregamos ‘items’ al mismo dando click derecho Add Item.
Esto crea los lugares en los cuales se mostraran los objetos
Pagina 6
8. Mi Primera Aplicación para Smart Devices
En las propiedades de cada ítem que agregamos, configuramos el Nombre, Descripción,
también se pueden asociar una imagen a este elemento para darle mayor vista a nuestra
aplicación. En la propiedad data del Item Es donde se seleccionará el objeto workwithdevices
esto se hará para los 3 items que hay que agregar. Para las 3 transacciones, Hotel, Playa Y
Estado. Y guardamos.
Pagina 7
9. Mi Primera Aplicación para Smart Devices
Configurando el Generador
En las propiedades del nuevo generador Smart Devices, habrá que setear los siguientes
valores:
-StartupObject: Destinos. Que es el Dashboard que acabamos de crear
-Android sdk: la ruta donde está instalado el SDK de Android.
-JDK Directory: EL directorio donde se encuentra en jdk de java.
Con esta configuración ya podemos compilar y probar nuestra primera aplicación para Smart
Devices.
Pagina 8
10. Mi Primera Aplicación para Smart Devices
Parte 3. Ejecución
Guardamos los cambios que hayamos realizada y ahora sí presionamos F5. Ingresamos los
datos de conexión a la base de datos y listo.
GeneXus deberá realizar 2 cosas:
1. Ejecutar la aplicación web.
2. Leventar el emulador de Andriod
En el primero es donde vamos a ingresar los datos de manera normal, a final de cuentas es una
aplicación web.
Pagina 9
11. Mi Primera Aplicación para Smart Devices
Y en el emulador de android podremos ver la información ingresada desde web e incluso
podemos realizar inserciones de nuevas playas.
Ahora podemos ingresar algunos Datos a la aplicación web, mientras inicia el emulador de
Andriod.
Pagina 10
12. Mi Primera Aplicación para Smart Devices
Una vez que hayamos cargado algunos datos en la aplicación y el emulador esté listo podemos
empezar a ver cómo queda el diseño en el dispositivo.
Pagina 11
13. Mi Primera Aplicación para Smart Devices
En el emulador cuando lo desbloqueamos aparece el dashboard con los elementos que
agregamos a él. Seleccionamos el listado de playas
Ahora seleccionamos alguna de las playas que hayamos ingresado mediante la aplicación web.
Pagina 12
14. Mi Primera Aplicación para Smart Devices
Vemos que nos muestra la información de las playas, si ahora damos click en la parte de
Localización veamos que sucede…
El emulador abre la aplicación de mapas del dispositivo y muestra la geolocalización del punto
que le ingresamos.
Pagina 13
15. Mi Primera Aplicación para Smart Devices
Ahora bien, regresamos a la pantalla anterior:
Y Podemos ver en la parte de arriba que tenemos ‘pestañas’ que en realidad son los niveles de
la transacción Playa, creamos como niveles a Hotel, para hacer referencia a los hoteles que hay
cercanos a esa playa, y Playa Imagen esto es para que los usuarios que visiten la playa puedan
subir imágenes desde su dispositivo de esa playa o de cualquier otra.
Pagina 14
16. Mi Primera Aplicación para Smart Devices
De este modo es como interactuamos con la aplicación en el dispositivo. La parte de las fotos,
por ser un emulador no se podrá visualizar en esta parte.
Parte 4. Deploy to cloud
Para el caso de que deseemos realizar el deploy directamente en la nube, solo ay que cambiar
una propiedad en el generador Ruby. La propiedad se llama ‘Deploy to cloud’ la seteamos en
yes. Al realizar esto las propiedades e incluso el DataStore cambiará, pues es un Datastore
público, pero no necesitamos cambiar nada más.
Ahora solo hacemos un Rebuild All para que los objetos tomen los cambios, de este modo la
aplicación se desplegará directamente en la nube.
Pagina 15
17. Mi Primera Aplicación para Smart Devices
Como podemos observar, la aplicación en la nube nos muestra aparte del Developer Menú un
código QR el cual al ser escaneado por un dispositivo, en este caso andriod , pues estamos
generando para esta tecnología. El dispositivo andriod en el escaneo del código detecta una
URL la cual contiene la aplicación lista para descargarla e instalarla. Una vez instalada la
aplicación, el dispositivo se conectará al servidor público para realizar la conexión a la base
de datos y de este modo traer los datos que habíamos guardado en un principio.
Nota: Los códigos QR son códigos de respuesta rápida por sus siglas en inglés Quick
Response Code, este tipo de códigos puede utilizarse para url, textos largos, tarjetas de
presentación, números telefónicos etc. Actualmente la mayoría de los nuevos dispositivos
incorporan un lector de este tipo de códigos sobre todo para bajar aplicaciones rápidamente.
Pagina 16
18. Mi Primera Aplicación para Smart Devices
Contactos y Recursos
La Comunidad GeneXus
La Comunidad GeneXus le brinda diversas formas de obtener respuestas a sus preguntas y
soluciones a sus problemas, así como también oportunidades para compartir sus propias
experiencias. Encontrará una lista completa de los recursos disponibles de la Comunidad en
http://www.genexus.com/community/
Soporte
ARTech ofrece una amplia variedad de servicios y recursos de soporte:
Soporte Auto-Servicio Online
Estos recursos están disponibles para todos online. No obstante, la información a la que
cada uno pueda acceder depende de su Nivel de Acceso a GXte chnical (Usuario
Registrado o Cliente).
Servicios de Soporte Interactivo
Interactúe con otros miembros de la Comunidad o con el Equipo de Soporte.
Visite http://www.genexus.com/support/
Si usted vive en Estados Unidos o Canadá puede enviarnos sus preguntas a
gxtrial.usa@genexus.com
Como Comprar
Las Tecnologías GeneXus se venden a través de la red de distribuidores en todo el mundo.
Encuentre su distribuidor más cercano aquí http://www.genexus.com/distributors
O póngase en contacto con sales@genexus.com
Links recomendados
Web site: http://www.genexus.com
Evolution 2: www.genexus.com/xev2beta
GeneXus X Basic Course: http://www.gxtechnical.com/basiccourse/
Laboratorio práctico de GeneXus X y Libro online: www.genexusx.com/aprenda
Comunidad GeneXus: http://www.genexus.com/community
Pagina 17