crear aplicacion androide

55
INSTITUTO TECNOLÓGICO SUPERIOR SUDAMERICANO CARRERA DE ANÁLISIS DE SISTEMAS TEMA “ORIENTACION PARA EL DESARROLLO DE APLICACIONES PERSONALIZADAS PARA SISTEMA OPERATIVO ANDROIDE MEDIANTE UN EJEMPLO PRACTICO” Trabajo de graduación previo a la obtención del Título de Tecnólogo en Análisis de Sistemas. AUTOR: Darwin Matute Mendoza DIRECTOR: Ing. Xavier Delgado 9

Upload: darwin-matute-mendoza

Post on 31-Jul-2015

293 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: CREAR APLICACION ANDROIDE

INSTITUTO TECNOLÓGICO SUPERIOR SUDAMERICANO

CARRERA DE ANÁLISIS DE SISTEMAS

TEMA

“ORIENTACION PARA EL DESARROLLO DE APLICACIONES PERSONALIZADAS PARA SISTEMA OPERATIVO ANDROIDE MEDIANTE UN EJEMPLO PRACTICO”

Trabajo de graduación previo a la obtención del Título de

Tecnólogo en Análisis de Sistemas.

AUTOR: Darwin Matute Mendoza

DIRECTOR: Ing. Xavier Delgado

CUENCA – ECUADOR2012

9

Page 2: CREAR APLICACION ANDROIDE

CAPITULO II

10

Page 3: CREAR APLICACION ANDROIDE

1 MARCO TEORICO

2.1 GENEXUS X EVOLUTION 2

Es una herramienta de desarrollo de software ágil, multiplataforma, basado en conocimiento orientada principalmente a aplicaciones web empresariales, plataformas Windows y dispositivos móviles o inteligentes

Principales características

Semántica de Dominios.Explote el significado de los campos y el contexto, para simplificar el desarrollo.

La experiencia de uso esperada.Brinde una experiencia ajustada a cada navegador y dispositivo.

Click to Cloud.Publique sin esfuerzo sus aplicaciones en la nube.

GeneXus Access Manager.Controle y gestione los usuarios, roles y permisos de las aplicaciones desarrolladas, fácilmente.

Smart Devices Generator.Desarrollo de Aplicaciones Nativas para Android, BlackBerry e iOS.

Mayor Performance.Mejor velocidad de respuesta y menor consumo de recursos de sus aplicaciones.

11

Page 4: CREAR APLICACION ANDROIDE

Validación de Datos no intrusiva.Valide datos contra su servidor, pero sin interrumpir la experiencia de uso de sus clientes.

Multiplataforma.Cree sus aplicaciones una vez, ejecútelas en cualquier plataforma.

Razones para cambiar a GeneXus X Evolution 2

> Soporte Nativo de Dispositivos Móviles.

> Mayor performance y estabilidad.

> Mayor seguridad, para crear aplicaciones confiables.

> Templates modernos que facilitan el desarrollo de las aplicaciones.

> Completitud en el modelado basado en BPMN.

Mas:”http://www.genexus.com/genexus-x-evolution-2/genexus-x-evolution-2?es”

2.2 SQLSERVER

Microsoft SQL Server es un sistema para la gestión de bases de datos, producido por Microsoft, basado en el modelo relacional. Sus lenguajes para consultas son T-SQL. Microsoft SQL Server constituye la alternativa de Microsoft a otros tantos sistemas gestores de bases de datos como son Oracle, PostgreSQL o MySQL.

T-SQL (Transact-SQL) es el principal medio de interacción con el Servidor. Permite realizar las operaciones claves en SQL Server, incluyendo la creación y modificación de esquemas de la base de datos, la introducción y edición de los datos en la base de datos, así como la administración del servidor como tal. Esto se realiza mediante el envío de sentencias de T-SQL y declaraciones que son procesadas por el servidor y los resultados (o errores) regresan a la aplicación cliente.

Características de Microsoft SQL Server

Soporte de transacciones. Escalabilidad, estabilidad y seguridad. Soporta procedimientos almacenados. Incluye también un potente entorno gráfico de administración, que permite el uso

de comandos DDL y DMLgráficamente.

12

Page 5: CREAR APLICACION ANDROIDE

Permite trabajar en modo cliente-servidor, donde la información y datos se alojan en el servidor y los terminales oclientes de la red sólo acceden a la información.

Además permite administrar información de otros servidores de datos

Mas:” http://www.microsoft.com/sqlserver/en/us/default.aspx”

2.3 PLATAFORMA WINDOWS 7

Este sistema operativo es muy estable ya que incluye varias características nuevas, como mejoras en el reconocimiento de escritura a mano, soporte para discos duros virtuales, rendimiento mejorado en procesadores multinúcleo,16 mejor rendimiento de arranque, DirectAccess, y mejoras en el núcleo. Windows 7 añade soporte para sistemas que utilizan múltiples tarjetas gráficas de proveedores distintos (heterogeneous multi-adapter o multi-GPU), una nueva versión de Windows Media Center y un gadget para el, y aplicaciones como Paint, Wordpad y la Calculadora rediseñadas. Se añadieron varios elementos al Panel de control, como un asistente para calibrar el color de la pantalla, un calibrador de texto ClearType, Solución de problemas, Ubicación y otros sensores, Administrador de credenciales, Iconos en el área de notificación, entre otros.17 El Centro de seguridad de Windows se renombró a Centro de actividades, y se integraron las categorías de seguridad y el mantenimiento del equipo en el.

Mas:” http://www.alegsa.com.ar/Dic/windows.php”

2.4 ANDROID O.S.

Android en un Sistema Operativo además de una plataforma de Software basada en el núcleo de Linux. Diseñada en un principio para dispositivos móviles, Android permite controlar dispositivos por medio de bibliotecas desarrolladlas o adaptados porGoogle mediante el lenguaje de programación Java. 

Android es una plataforma de código abierto. Esto quiere decir, que cualquier desarrollador puede crear y desarrollar aplicaciones escritas con lenguaje C u otros lenguajes y compilarlas a código nativo de ARM (API de Android).

Características

Framework de aplicaciones: permite el reemplazo y la reutilización de los componentes.  Navegador integrado: basado en el motor open Source Webkit.  SQlite: base de datos para almacenamiento estructurado que se integra directamente con las

aplicaciones. Multimedia: Soporte para medios con formatos comunes de audio, video e imágenes planas

(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF).  Máquina virtual Dalvik: Base de llamadas de instancias muy similar a Java.  Telefonía GSM: dependiente del terminal. Bluetooth, EDGE, 3g y Wifi: dependiente del terminal.

13

Page 6: CREAR APLICACION ANDROIDE

Cámara, GPS, brújula y acelerómetro: Dependiente del terminal  Pantalla Táctil.

Arquitectura

Los componentes principales del sistema operativo de Android

Aplicaciones: las aplicaciones base incluyen un cliente de correo electrónico, programa de SMS, calendario, mapas, navegador, contactos y otros. Todas las aplicaciones están escritas en lenguaje de programación Java.

Marco de trabajo de aplicaciones: los desarrolladores tienen acceso completo a los mismos APIs del framework usados por las aplicaciones base. La arquitectura está diseñada para simplificar la reutilización de componentes; cualquier aplicación puede publicar sus capacidades y cualquier otra aplicación puede luego hacer uso de esas capacidades (sujeto a reglas de seguridad del framework). Este mismo mecanismo permite que los componentes sean reemplazados por el usuario.

Bibliotecas: Android incluye un conjunto de bibliotecas de C/C++ usadas por varios componentes del sistema. Estas características se exponen a los desarrolladores a través del marco de trabajo de aplicaciones de Android; algunas son: System C library (implementación biblioteca C estándar), bibliotecas de medios, bibliotecas de gráficos, 3D y SQLite, entre otras.

Runtime de Android: Android incluye un set de bibliotecas base que proporcionan la mayor parte de las funciones disponibles en las bibliotecas base del lenguaje Java. Cada aplicación Android corre su propio proceso, con su propia instancia de la máquina virtual Dalvik. Dalvik ha sido escrito de forma que un dispositivo puede correr múltiples máquinas virtuales de forma eficiente. Dalvik ejecuta archivos en el formato Dalvik Executable (.dex), el cual está optimizado para memoria mínima. La Máquina Virtual está basada en registros y corre clases compiladas por el compilador de Java que han sido transformadas al formato.dex por la herramienta incluida "dx".

Mas:” http://es.wikipedia.org/wiki/Android”

14

Page 7: CREAR APLICACION ANDROIDE

CAPITULO III

15

Page 8: CREAR APLICACION ANDROIDE

2 METODOLOGIA DE DESARROLLO

3.1 PREREQUISITOS

Instalamos las herramientas necesarias para el desarrollo de la aplicación.

3.1. 1 JDK JAVA

a. Una vez descargado dicho archivo, le damos doble clic para que empiece la instalación del mismo. Y nos aparecerá una pantalla como esta

b. Le damos siguiente para que continúe con la instalación

16

Page 9: CREAR APLICACION ANDROIDE

c. Si queremos cambiar la capeta de instalación le podemos dar clic en Change… e instalarla donde quiera y después le damos Next.

d. Empezará la instalación del Java JDK y tendremos que esperar unos minutos, dependiendo del rendimiento de tu equipo de cómputo.

e. Una vez que haya terminado la instalación, le daremos clic en continue y terminará la instalación de Java JDK.

17

Page 10: CREAR APLICACION ANDROIDE

3.1.2 TOMCAT

Vamos a instalar un servidor apache tomcat 7 en un Windows 7 Home Premium de 32 bits

a. Le damos click en next para continuar con la instalación

18

Page 11: CREAR APLICACION ANDROIDE

b. Para aceptar las condiciones le damos click en I Agree y continuamos

c. En esta ventana elegimos los componentes que vamos a intalar, en este caso será por defecto, pulsamos next.

d. Agregamos un usuario y contraseña en este caso yo puse mi nombre y le damos next

19

Page 12: CREAR APLICACION ANDROIDE

e. Le damos la dirección para que se instale en nuestro sistema y damos click en install para iniciar la instalación.

f. La instalación a comenzado esperamos unos minutos para continuar

20

Page 13: CREAR APLICACION ANDROIDE

g. Una vez que el proceso de la instalación haya terminado le damos en finish para concluir.

3.1.3 VISUAL J#a. Ahora instalaremos la herramienta de visual para ello damos doble click en el setup del

programa

b. En esta ventana para continuar aceptamos los términos del contrato de licencias y damos click en Instalar

c. El programa inicio instalando sus componentes entonces tenemos que esperar un momento hasta que finalice la instalación

21

Page 14: CREAR APLICACION ANDROIDE

d. Una vez que haya terminado de intalar completamente le damos click en finalizar y hemos terminado con visual J#.

3.1.4 SQL SERVER

Ahora procedemos a instalar la herramienta SQL SERVER que será el gestor de base de datos.

22

Page 15: CREAR APLICACION ANDROIDE

a. Una vez en la sección “Installation” (ver Figura 5) procederemos al apartado “New installation or add features to an existing installation” con la que instalaremos una nueva instancia de SQL Server 2008 R2 a nuestro equipo.

b.  SQL Server 2008 R2 se nos mostrarán los términos de la licencia que tendremos que aceptar.

23

Page 16: CREAR APLICACION ANDROIDE

c. En esta ventana nos carga archivos auxiliares que se instalaran

24

Page 17: CREAR APLICACION ANDROIDE

d. Entonces tendremos que seleccionar las características de Express Advanced Services que vamos a instalar y damos clic en siguiente.

e. Una vez aceptados los términos podemos observar cómo se realizan de nuevo una serie de chequeos previos a la instalación, que debemos cumplir antes de proseguir.

25

Page 18: CREAR APLICACION ANDROIDE

f. Ahora agregamos el nombre de la instancia en este caso yo he puesto el nombre de instancia predeterminado. Siguiente

26

Page 19: CREAR APLICACION ANDROIDE

En la siguiente ventana como vemos, ahora toca el turno de configurar las cuentas del servicio e

intercalación.

Como buena práctica se recomienda utilizar un usuario de dominio creado explícita y

exclusivamente para el servicio concreto del que estemos hablando. Además, se recomienda que

dicho usuario tenga los mínimos privilegios y permisos posibles.

g. En la imagen se puede apreciar como cada servicio de SQL Server que se ha solicitado

instalar, posee una cuenta de dominio diferente. Siguiente

En la imagen de la Figura podemos ver qué configuraciones predeterminadas a nivel de motor

relacional podemos realizar:

Asignar un login concreto al rol sysadmin

Crear un password para el usuario sa

Asignar directorios predeterminados (Ver Figura 19)

Asignar el estado de la configuración FILESTREAM

27

Page 20: CREAR APLICACION ANDROIDE

h. Le damos click en siguiente dejando los valores por defecto.

i. Como podemos apreciar a iniciado la instalación esperamos hasta que se haya completado.

28

Page 21: CREAR APLICACION ANDROIDE

Una vez terminado el proceso de instalación, ya podremos comenzar a trabajar con SQL Server 2008 R2 inmediatamente, puesto que no será necesario reinicio alguno.

3.1.5 GENEXUS EVOLUTION 2

Ahora procedemos a instalar GENEXUS la herramienta principal con la que trabajaremos.

a. Damos doble click en el instalador para comenzar la instalación

b. Nos muestra la ventana principal en la cual hacemos click en siguiente.

29

Page 22: CREAR APLICACION ANDROIDE

c. En la siguiente ventana tenemos que elegir el idioma y aceptar los términos de licencia y después en next

d. Ahora ingresamos en nombre y la compañía y damos un next

30

Page 23: CREAR APLICACION ANDROIDE

e. En la siguiente ventana dejamos la dirección que esta por defecto y pulsamos siguiente

f. Seguidamente me pedirá si deseo instalar en todos los usuarios o solo en el usuario actual, en nuestro caso le dejamos como usuario actual y next

31

Page 24: CREAR APLICACION ANDROIDE

g. Después de darle un siguiente el programa empezará a instalar sus componentes

h. Cuando el programa haya terminado completamente su instalación damos click en Finish y terminamos con las herramientas necesarias. A continuación estamos listos para desarrollar la aplicación.

32

Page 25: CREAR APLICACION ANDROIDE

3.2 PRIMEROS PASOS

En esta guía desarrollaremos una aplicación para una inmobiliaria, y está orientada específicamente para dispositivos móviles con tecnología Androide y al final se mostrara la aplicación instalada en el móvil.

a. Cree una nueva KB

b. Observe que la conexión este establecida en el Data Store Default

33

Page 26: CREAR APLICACION ANDROIDE

3.3 APLICACIÓN WEB

a. Creamos una transacción Propiedades

b. Creamos una transacción Barrios

c. Damos f5 para ejecutar y damos click en crear d. Hacemos lo mismo para Barrios

34

Page 27: CREAR APLICACION ANDROIDE

e. Luego, abrirá el Developer Menu en el navegador, con los links para ingresar propiedades inmobiliarias y barrios.

3.4 APLICANDO EL PATTERN WORK WITH FOR SMART DEVICES

a. Aplicamos patrones para los dos objetos

35

Page 28: CREAR APLICACION ANDROIDE

b. Generamos reglas para el ingreso de datos que no sean erróneos así mismo para los dos objetos y para todos sus campos

c. Damos una ruta para ejecución de la aplicación y seleccionamos el directorio de Androide

36

Page 29: CREAR APLICACION ANDROIDE

d. En el Developer Menu, además de los links para ejecutar los objetos de la aplicación Web, aparecerán QR codes: uno que encapsula la URL para poder descargar el KBN de acuerdo al dispositivo

e. En nuestro caso el emulador está abriendo el KBN (Knowledge Base Navigator) que muestra la URL para ejecutar el dashboard de la aplicación (único objeto main que tenemos hasta el momento). Recuerde todo lo estudiado sobre la arquitectura. Aquí no estará ejecutando un compilado, sino un intérprete (el KBN)

37

Page 30: CREAR APLICACION ANDROIDE

f. Al hacer tap sobre la URL, se muestra el layout correspondiente al Dashboard:

g. Haga tap sobre “List of Properties” (Propiedades)

h. Observe que aparecen las mismas propiedades que ingresó antes cuando ejecutó el Developer Menu web

i. Observe los atributos que se están mostrando de cada propiedad. Vaya a GeneXus a buscar en el pattern el Layout de este List, para ver la correspondencia.

j. Haga tap sobre una cualquiera de las propiedades listadas, y vea cómo aparece el detalle de la misma

k. Edite la propiedad inmobiliaria que está visualizando (para ello presione MENU) tras lo que aparece el menú que se muestra a continuación. Elija la acción “Update”.

3.5 ENTIDADES INTERRELACIONADAS

a. Relacione las entidades propiedad con cada barrio (cada propiedad pertenece a un vecindario)

b. Para ello agregue en la transacción Propiedad los atributos barrios y nombre de barrios (permitiendo nulos en código barrios, de lo contrario le fallará la reorganización) y grave:

c. Observar la instancia del patrón de barrios

38

Page 31: CREAR APLICACION ANDROIDE

d. Para corroborar que significa eso que ud. está pensando, presione F5, reorganice y constátelo.

e. Pruebe en el “List of Properties”: f. Editar una propiedad para ingresarle el vecindario (observe que se le ofrece elegir

el vecindario entre los existentes.

39

Page 32: CREAR APLICACION ANDROIDE

3.6 PERSONALIZANDO EL PATTERN “WORK WITH FOR SMART DEVICES”

a. Editar el Layout del List del WorkWithDevicesProperty y agregar el atributo PropertyAddress. El Layout deberá quedar como se muestra (para quitarle el Label

b. Ejecutar la aplicación presionando F5 y verificar los cambios realizados.

c. Y si quiere que la columna de la izquierda (la de la foto) ocupe el 30% de la pantalla

40

Page 33: CREAR APLICACION ANDROIDE

d. Ahora queremos que la fila 1 (donde está la imagen y el nombre de la propiedad) ocupe el 65% del alto de la tabla y la fila 2 (donde está la dirección) ocupe el 35% restante, con un alto de tabla de 100 dips.

e. Expanda la imagen para ocupar las dos filas. Pruebe todo lo modificado.

3.6.1 Themes

Si dan los tiempos, puede probar la utilización de temas en su aplicación.

a. Los Layouts con los que hemos trabajado hasta el momento, no permitían configurar aspectos de diseño de los controles.

Para ello:

b. Modifique el theme predeterminado para Android “SimpleAndroid”

c. Cree una subclase del nodo Attribute, con el nombre que desee, y modifíquele alguna propiedad, como mostramos (luego grabe):

41

Page 34: CREAR APLICACION ANDROIDE

d. Observe que en el Folder View tenemos bajo el nodo Customization, propiedades a configurar para cada plataforma de Smart Devices posible:

e. Las mismas propiedades se encuentran bajo Preferences/Patterns, en una instancia que configura las propiedades de los Work With for Smart Devices. Para cada nodo bajo Platforms, tendrá la posibilidad de configurar un theme diferente.

42

Page 35: CREAR APLICACION ANDROIDE

f. Si tiene un theme configurado para “Any Platform” y uno para “Any Android” y usted está generando para Android.

g. Ahora querrá configurar que cuando se está visualizando una propiedad inmobiliaria (Detail), el nombre de la misma salga amarillo. Vaya a Section(General) y elija para el atributo nombre de la propiedad la clase YellowAttribute (asegúrese de estar en el Layout para Android y no para “Any Platform”).

h. Pruébelo en ejecución:

43

Page 36: CREAR APLICACION ANDROIDE

3.7 PANELES PARA PEDIR DATOS AL USUARIO

Queremos poder listar solamente las visitas agendadas para un día determinado. Por lo que necesitamos que el usuario ingrese esa fecha y entonces proceder a mostrar las visitas. Para ello:

a. Cree un objeto del tipo “Panel for Smart Devices” de nombre AskDate.

b. Agregue una variable &appointmentDate y luego insértela en el Layout (asegúrese que la propiedad Readonly quede en False, de manera tal que el usuario pueda ingresar valor para la misma)

c. A su lado haga botón derecho e ingrese una nueva acción (vea cómo el botón quedará dentro del Layout, esta vez).

d. Creamos ese nuevo Level con un nodo List, que es en el que diseñaremos el Layout para este caso.

44

Page 37: CREAR APLICACION ANDROIDE

e. Y especificamos parm(PropertyAppointmentDate);

Nota: además, hemos agregado un order por PropertyName, PropertyAppointmentTime, con un break by PropertyName, así nos salen agrupadas las visitas por propiedad; hemos agregado la posibilidad de filtrar

f. Ir al panel para pedirle la fecha al usuario, y en las propiedades de la acción pasar el parámetro &appointmentDate (la variable) e invocar al Level paralelo correspondiente.

45

Page 38: CREAR APLICACION ANDROIDE

La invocación quedará:

g. Agregue al Dashboard este panel:

46

Page 39: CREAR APLICACION ANDROIDE

3.8 EJECUCIÓN EN EL DISPOSITIVO

a. En un dispositivo Android, especifique al dashboard como “Startup Object” y haga F5, o directamente haga botón derecho sobre la pestaña del dashboard y “Run With This Only”.

b. Haga View/Show QR Codes. Ejecute la aplicación Barcode Scanner de su dispositivo y realice la lectura del Código QR, que aparece (que contiene codificada la URL del compilado donde fue subida la aplicación Smart Device en la nube). Automáticamente se descargará el compilado en su dispositivo y podrá instalarlo y ejecutar.

47

Page 40: CREAR APLICACION ANDROIDE

3.9 INTALACION DE LA APP EN EL DISPOSITIVO

a. Instalar el apk que ya se genera. Lo encontrasen tu app main.

b. Ese .apk lo mueves a tu teléfono y lo instalas abriendo el archivo en el teléfono. c. Eso es todo la aplicación esta lista e instalada para utilizarse

48

Page 41: CREAR APLICACION ANDROIDE

CONCLUSIONES

Al culminar con este trabajo hemos logrado obtener un documento base que nos ayude con la creación de aplicaciones para dispositivos móviles, comenzando desde las herramientas necesarias para su desarrollo, hasta la instalación, tanto de las dichas herramientas como en el dispositivo. Con esta guía todos los usuarios y desarrolladores podrán basarse y generar su propia aplicación personalizada, según cada una de sus necesidades y depende de su creatividad para crear algo nuevo y novedoso.

Las herramientas han sido de fácil manejo, ya que no se necesita conocimientos muy amplios dentro de su manejo, por la forma de trabajo o desarrollo que en su mayoría utiliza interfaces graficas, lo que nos hace más entendible y sencilla su utilización.

Tambien se ha logrado tener resultados constructivos ya que se ha obtenido conocimientos suficientes para generar aplicaciones funcionales para el usuario de móviles con tecnología Androide.

49

Page 42: CREAR APLICACION ANDROIDE

BIBLIOGRAFIA

http://www.genexus.com/genexus-x-evolution-2/genexus-x-evolution-2?es

http://www.microsoft.com/sqlserver/en/us/default.aspx

http://www.alegsa.com.ar/Dic/windows.php

http://es.wikipedia.org/wiki/Android

http://training.genexus.com/cursos/todos-los-cursos?es

http://wiki.gxtechnical.com/commwiki/servlet/hwiki?My+First+Android+Application,

50