Paso 7: Diseño de aplicaciones de ANDRIOD
Introducción
Esta aplicación será responsable de comunicación de la entrada a través de Wi-Fi. Primero pedirá login y password para que ese usuario no autorizado no será capaces de utilizarlo. Entonces enviará comandos para datos específicos según los requisitos de usuario y luego mostrará el envío de datos por la puerta de enlace en forma diferente. Hay varios botones para varios tipos de datos que se mostrará, en cada clic se enviará un comando especifico para eso gateway reconoce que los datos que se enviarán al usuario de base de datos. También existe disposición para encender y apagar los metros según las necesidades del usuario de la aplicación. Este medidor es inteligente en el sentido que podemos fijar un límite de consumo de energía en la aplicación enviará el medidor ese límite a gateway, gateway le seguimiento de consumo de energía al llegar a ese límite automáticamente se apaga el aparato.
En la imagen de arriba podemos ver que está habilitada la Meter1 metro2 no es, así, podremos utilizar los botones de 1 metro Relacionados con medidor de 2 botones se desactivan para evitar el uso accidental. También hay tres botones para enviar comandos para recuperar los datos de uso actual, uso de datos de semanas anteriores del mes actual y el consumo de datos del día anterior. También hay un interruptor para cada metro encenderlo y el apagado, esto hará que el aparato para activarse/desactivarse según nuestro deseo. El uso actual se mostrará en la misma pantalla y los datos que se mostrará están la potencia, voltaje, corriente y energía. El resto de comandos hará datos sobre diferentes actividades en forma de gráficos. En la parte inferior del cuadro de texto es establecer el límite de consumo mensual, en el siguiente botón que mostrará el consumo de energía del mes anterior.
Para mostrar los datos en forma de gráficos hemos utilizado la biblioteca Achartengine que tenemos que copiar en la carpeta libs del proyecto y tenemos que añadir su actividad gráfica en el mainfest archivo. Hemos usado Achartengine porque es lite, gratis y soporta varios tipos de gráficos.
Para enviar comandos y recibir datos que hemos utilizado tomas de corriente, porque en el caso de UDP sockets allí pueden ser posibilidad de que los datos pueden ser perdidos que hará aplicación a comportarse anormalmente. Datos de envío y recepción están un proceso desperdiciador de tiempo para cada comunicación que se creará un hilo de rosca, comunicación ocurrirá en su controlador y resultados serán publicados por su ejecutable en el subproceso principal. En el cierre de cada hilo de rosca también se cerrará su toma. También hemos utilizado algunas imágenes de fondo, que debe ser copiada /bin/res/drawable-mdpi carpeta.
WIDGETS ANDROID USA-
1. recuadros - para mostrar diferentes mensajes.
2. editar cajas – para tener entrada para el usuario.
3. los botones, para realizar alguna acción en consecuencia.
4. interruptores, para encender y apagar los aparatos.
5. alternar botones – para realizar la acción de palanca en alternar apagado.
6. relativa apariencia – para arreglar varios widgets en la pantalla.
7. lineal diseño – organizar varios widgets en la pantalla.
VARIOS API y métodos utiliza-
1. findViewById
2. onClick
3. onPause
4. onResume
5. onKeyDown
6. onCheckedChange
7. setOnClickListener
8. setOnCheckedChangeListener
9. startActivity
10. putExtra
11. getExtra
12. y muchos más
Mecanismos utilizados
Tomas de corriente - tomas de corriente son un método de IPC que permite que los datos que se intercambiarán entre aplicaciones, ya sea en el mismo host (ordenador) o en distintos hosts conectados por una red.
Tomas de corriente existen en un dominio de la comunicación, que determina:
1. el método de identificación de una toma de corriente (es decir, el formato de una toma de "dirección")
2. y la gama de comunicación (es decir, ya sea entre aplicaciones en el mismo host o entre aplicaciones en distintos hosts conectados mediante una red).
TIPOS de zócalo-son de dos tipos
1. TCP Socket
2. UDP Socket
Hemos utilizado Socket TCP debido a-
Sockets TCP proporcionan una confiable, bidireccional, canal de comunicación de la secuencia de bytes. Los términos y condiciones en esta descripción, nos referimos a lo siguiente: medios fiables que nos garantiza que cualquiera de los datos transmitidos llegará intacto a la aplicación receptora, tal y como fue transmitido por el remitente (suponiendo que el enlace de red ni el receptor se bloquea) o recibirá notificación de un probable fallo en transmisión.
Bidireccional significa que los datos pueden transmitirse en cualquier dirección entre dos tomas. Byte-stream significa que, como con las pipas, no hay ningún concepto de límites de mensaje.
HILOS - All la tarea relacionados con red no debe realizarse en el subproceso principal porque entonces nuestra aplicación será irracional. Así que debemos utilizar
1. tarea asincrónica o
2. hilos
Aquí hemos usado hilos de rosca, por cada clic realizar una operación de la red un hilo se creará que será responsable de la transferencia de datos. También para cada subproceso que necesitamos implementar un controlador y un método ejecutable.
CONTROLADOR - controladores se utilizan para programar las acciones en hilo, en sentido amplio podemos decir que pone en cola la lista de acciones a realizar. O para poner una acción a realizar en un subproceso diferente.
EJECUTABLES, estos se ejecutan en algún momento en el futuro, desde un controlador no podemos directamente nuestra interfaz de usuario que necesitamos runnables.